题目:
输出所有的“水仙花数”,所谓水仙花数是指一个3位数,其各位数字的立方和等于该数本身。
思路:
1:是三位数
2:个位的三次方+十位的三次方+百位的三次方=数
所以我们分别求出三位数的个十百位,再比较就行啦!
以下是用python写出的程序:
代码如下:
for i in range(100,1000):
a=i%10#个位
b=int(i%100/10)#十位
c=int(i/100)#百位
if a*a*a+b*b*b+c*c*c==i:
print(i)
运行结果:
以下是用java写出的程序:
代码如下:
public class demo {
public static void main(String[] args) {
for (int i = 100; i < 1000; i++) {
// 个位数
int a = i % 10;
// 十位数
int b = i % 100 / 10;
// 百位数
int c = i / 100;
if(a*a*a + b*b*b + c*c*c == i){
System.out.println(i);
}
}
}
}
运行结果: