四位数各位上的数字的四次方之和等于本身为四叶玫瑰数。是指一个 四位数 ( n=4),它的每个位上的数字的 n 次幂之和等于它本身。
(例如:1^4 + 6^4+ 3^4 + 4^4=1634)

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

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

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

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

写一个for循环来判断那些数字是四叶玫瑰数,并输出。
System.out.println("FourLeafRoses:");
for (int index=1000; index < 10000; ++index) {
if (isFourLeafRoses(index))
System.out.print(index + "\t");
}

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