1.题目描述
立方变自身
观察下面的现象,某个数字的立方,按位累加仍然等于自身。
1^3 = 1
8^3 = 512 5+1+2=8
17^3 = 4913 4+9+1+3=17
…
请你计算包括1,8,17在内,符合这个性质的正整数一共有多少个?
请填写该数字,不要填写任何多余的内容或说明性的文字。
2.思路
用暴力吧!
3.代码实现
public class 立方变自身 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int cnt=0;
//cnt 计数
for(int i=1;i<1000000;i++)
{ int tmp=(int)Math.pow(i, 3);// Math.pow(i,3)求i^3
int rnt=0;//rnt 暂存每个位的和的中间变量,每次要清零,所以放在for循环里面!!!!!!!
//%10,/10,求出每个位的数字
while(tmp!=0)
{ //举个例子 512。
//512%10=2 得到个位的2 存在累加中间变量rnt中
//tmp=512/10=51 51%10=1 得到十位 ,存到rnt
//tmp=51/10=5 5%10=5;得到百位,存rnt中
int a=tmp%10;
rnt+=a;
tmp=tmp/10;
}
if(i==rnt)
{
System.out.println(i);
cnt++;
}
}
System.out.println(cnt);
}
}