如何用Java求得所有六合数
1、先得知道,什么叫做六合数。六合数是指一个 6 位数 ,它的每个位上的数字的 6 次幂之和等于它本身。
(例如:5^6 + 4^6 + 8^6 + 8^6 + 3^6 + 4^6 = 548834)
那么,只要取得每一位的6次幂,然后求和,如果和原来的数相等,那么ta就是一个六合数。

2、创建好工程之后,或者沿用已有工程,创建包,新建一个类,我命名为SixUnion,大家随意。

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

4、判断这个数是不是六合数,求每一位数上的数的五次方和是否为原数字本身。
这里,我们通过取得各个位数上的值,进行六次方和运算,然后拿求得的值与原数字判断,若相等,则为六合数。
String str = String.valueOf(number);
char[] queue = str.toCharArray();
int sum = 0;
for (int index = 0; index < queue.length; index++) {
sum = sum + sixs(Integer.valueOf(""+queue[index]));
}

5、写一个main函数计算一下,如图。
用for循环把所有六位数拿来做判断。
for (int index = 100000; index < 1000000; index++) {
if (isSixUnion(index))
System.out.print(index + "\t");
}

6、求得,世上只有一个六合数,即为548834

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:113
阅读量:50
阅读量:95
阅读量:59
阅读量:25