【问题描述】
打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。
【程序分析】
用for循环控制100-999个数,每一个数分解出个位,十位,百位。
【代码如下】
public class Prog3{
public static void main(String[] args){
int a,b,c;//定义三位数中的个十百位数
System.out.println("三位数中所有的水仙花数为: ");//输出所有的水仙花数
for(int n=100;n<=999;n++){//控制100-999个数
a=n/100;//百位上的数
b=n%100/10;//十位上的数
c=n%10;//个位上的数
if(a*a*a+b*b*b+c*c*c==n){//判断是否为水仙花数
System.out.println(n);//输出水仙花数
}
}
}
}



