云盘资源分享论坛

 找回密码
 立即注册
搜索
热搜: 书籍 电影 音乐
查看: 232|回复: 7

Java水仙花数

[复制链接]

966

主题

156

回帖

4492

积分

中级会员

Rank: 3Rank: 3

UID
32013
金钱
3371
钻石
7
积分
4492
注册时间
2023-7-27
发表于 2023-8-1 16:20:16 | 显示全部楼层 |阅读模式

水仙花数,也被称为自恋数、阿姆斯特朗数,是指一个n位数(n≥3),它的每个位上的数字的n次幂之和等于它本身。下面是Java代码实现水仙花数的判断:
盘基地论坛免责声明
1、本站资源来自互联网用户收集发布,仅供用于学习和交流。
2、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。
3、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决。
4、联系邮箱:admin@panjdzy.com
5、官方网址:www.panjdzy.com
6、备用网址:www.panjd.top




上一篇:电阻是什么
下一篇:Java语言的书写格式
回复

使用道具 举报

966

主题

156

回帖

4492

积分

中级会员

Rank: 3Rank: 3

UID
32013
金钱
3371
钻石
7
积分
4492
注册时间
2023-7-27
 楼主| 发表于 2023-8-1 16:20:54 | 显示全部楼层
[mw_shl_code=java,true]public class NarcissisticNumber {
    public static void main(String[] args) {
        int start = 100;
        int end = 999;

        System.out.println("水仙花数有:");
        for (int i = start; i <= end; i++) {
            if (isNarcissisticNumber(i)) {
                System.out.println(i);
            }
        }
    }

    // 判断一个数是否为水仙花数
    public static boolean isNarcissisticNumber(int number) {
        int originalNumber = number;
        int result = 0;
        int digits = String.valueOf(number).length();

        while (number > 0) {
            int digit = number % 10;
            result += Math.pow(digit, digits);
            number /= 10;
        }

        return result == originalNumber;
    }
}[/mw_shl_code]
回复

使用道具 举报

966

主题

156

回帖

4492

积分

中级会员

Rank: 3Rank: 3

UID
32013
金钱
3371
钻石
7
积分
4492
注册时间
2023-7-27
 楼主| 发表于 2023-8-1 16:21:48 | 显示全部楼层
水仙花数是指一个三位数,它的每个位上的数字的立方和等于它本身。举个例子:

153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
回复

使用道具 举报

966

主题

156

回帖

4492

积分

中级会员

Rank: 3Rank: 3

UID
32013
金钱
3371
钻石
7
积分
4492
注册时间
2023-7-27
 楼主| 发表于 2023-8-1 16:23:12 | 显示全部楼层
"位"是指一个数字中的每个位置或位置上的数字。对于一个整数,例如153,它有三个位:百位、十位和个位。

百位:位于最左侧的位置,表示该数值的百位数。
十位:位于中间的位置,表示该数值的十位数。
个位:位于最右侧的位置,表示该数值的个位数。
以153为例,1位于百位,5位于十位,3位于个位。

在判断水仙花数时,我们会分别计算每个位上数字的立方和,并判断是否与原始数值相等。
回复

使用道具 举报

966

主题

156

回帖

4492

积分

中级会员

Rank: 3Rank: 3

UID
32013
金钱
3371
钻石
7
积分
4492
注册时间
2023-7-27
 楼主| 发表于 2023-8-1 16:24:22 | 显示全部楼层
立方和是指一个数的各个位上数字的立方的总和。例如,对于一个三位数153,它的每个位上的数字分别是1、5和3。立方和的计算方式是将每个位上的数字进行立方运算,然后将所有结果相加。

在这个例子中,立方和的计算如下:
1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153

所以,在这种情况下,153的立方和就等于它本身,因此可以判断它是一个水仙花数。
回复

使用道具 举报

966

主题

156

回帖

4492

积分

中级会员

Rank: 3Rank: 3

UID
32013
金钱
3371
钻石
7
积分
4492
注册时间
2023-7-27
 楼主| 发表于 2023-8-1 16:28:51 | 显示全部楼层
一个三位数的例子是135。我们可以按照以下步骤进行计算:

取出个位数:5
取出十位数:3
取出百位数:1
然后我们可以进行加法和减法运算:

1 + 3 + 5 = 9
1 - 3 + 5 = 3

将两个结果相加得到 9 + 3 = 12。

最后的结果并不等于原始的数字135,所以135不是一个水仙花数。
回复

使用道具 举报

966

主题

156

回帖

4492

积分

中级会员

Rank: 3Rank: 3

UID
32013
金钱
3371
钻石
7
积分
4492
注册时间
2023-7-27
 楼主| 发表于 2023-8-1 16:30:36 | 显示全部楼层
水仙花数并不适用于所有数字。水仙花数是指一个三位数,它的各位数字的立方和等于该数本身。

我们可以使用以下步骤来判断一个三位数是否为水仙花数:

取出个位数、十位数和百位数。
计算每个位数的立方(即将数自己乘以自己再乘以自己)。
将每个位数的立方相加得到立方和。
判断立方和与原始数字是否相等,如果相等,则该数是水仙花数;如果不相等,则不是水仙花数。
举个例子,对于数字153:

个位数为3,十位数为5,百位数为1。
计算立方:1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153。
立方和等于原始数字,所以153是一个水仙花数。
但并非所有的数字都满足这个条件。只有当一个三位数的立方和等于该数本身时,才被称为水仙花数。
回复

使用道具 举报

966

主题

156

回帖

4492

积分

中级会员

Rank: 3Rank: 3

UID
32013
金钱
3371
钻石
7
积分
4492
注册时间
2023-7-27
 楼主| 发表于 2023-8-1 16:33:51 | 显示全部楼层
步骤来判断一个三位数是否为水仙花数:

取出个位数、十位数和百位数。
计算每个位数的立方(即将数自己乘以自己再乘以自己)。
将每个位数的立方相加得到立方和。
判断立方和与原始数字是否相等,如果相等,则该数是水仙花数;如果不相等,则不是水仙花数。
对于数字135:

个位数为5,十位数为3,百位数为1。
计算立方:1^3 + 3^3 + 5^3 = 1 + 27 + 125 = 153。
立方和等于原始数字,所以135是一个水仙花数。
对于135,经过计算后得出立方和等于原始数,因此135是一个水仙花数。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|云盘资源分享论坛

GMT+8, 2025-6-25 15:20

Powered by Discuz!    联系邮箱:admin@panjdzy.com

本站资源来自互联网用户收集发布,仅供用于学习和交流。

如有侵权之处,请联系站长并出示版权证明以便删除,敬请谅解!

快速回复 返回顶部 返回列表