水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。
(例如:1^3 + 5^3+ 3^3=153)

前期准备工作(包括相关工具或所使用的原料等)一台再正常不过的已经配置了java环境的电脑 Java判断水仙花数
首先,要了解什么是水仙花数,这样才能快速选择是用什么方式、方法,甚至算法来解决问题。
水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。
(例如:1^3 + 5^3+ 3^3=153)

创建工程,或使用已有工程,在工程下创建包,包内新建一个类,我命名为Narcissistic类,大家根据自己喜好随便命名,但请保持类名与文件名一致。

先写一个函数计算一个数字的立方为多少。我命名为cube()
private static int cube(int n) {
return n * n * n;
}

判断这个数是不是水仙花数,求每一位数上的数的立方和是否为原数字本身。
private static Boolean isNarcissistic(int number) {
int hundreds=number / 100;
int tens=number / 10 - hundreds * 10;
int ones=number % 10;
return cube(hundreds) + cube(tens) + cube(ones)==number;
}

写一个for循环来判断那些数字是水仙花数,并输出。
for (int index=100; index < 1000; ++index) {
if (isNarcissistic(index))
System.out.print(index + "\t");
}

注意事项一定要快快乐乐地学习~~~~注意代码书写规范啊~~~经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。作者声明:本教程系本人依照真实经历原创,未经许可,谢绝转载。
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
