先列出思路:
1. 得到任意一个数的 各位上的数字:任意一个数对10取模得到的都是这个数个位上的数
2. 如果想要获取这个数每个位上的数 就是需要把每个位上的数拿到个位上对10取模就可以了
3. 那么如何把这个数拿到个位上呢?就让这个数除以这个位就可以了
4.取得所有位数之后就好办了,判断 个位3次方+十位3次方+百位3次方 是否 等于 此数 若是则输出
for(int x=100; x<1000; x++)
{
int ge = x%10;
int shi = x/10%10;
int bai = x/10/10%10;
if((ge*ge*ge+shi*shi*shi+bai*bai*bai)==x)
{
System.out.println(x);
}
}
OK,这样所有的水仙花数就都输出来了,
有:
153
370
371
407
搞定!! |
|