一.题目描述
观察下面的现象,某个数字的立方,按位累加仍然等于自身。
1^3 = 1
8^3 = 512 5+1+2=8
17^3 = 4913 4+9+1+3=17
请你计算包括1,8,17在内,符合这个性质的正整数一共有多少个?
二.代码
public class test1{
public static void main(String[] args){
int count = 0;
for(int i=1;i<=1817;i++){
int c = (int)Math.pow((double)i,(double)3);//幂运算
if(check(c,i)){//判断是否符合要求
count++;
}
}
System.out.println(count);//输出结果:6
}
public static boolean check(int a,int i){
int sum=0;
while(a>0){
int c=a%10;//取出最后一位数
sum=sum+c;//把每一位数字相加起来
a=a/10;//去掉最后一位数,进行下一位数的判断
}
if(sum==i){//如果和等于原数
return true;
}else{
return false;
}
}
}