【程序3】
题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。
public class bianchengti_3 {
public static void main(String[] args) {
int i;
int a,b,c;
int count=0;
System.out.println("100-999间水仙花数有:");
for(i=100; i<=999; i++) {
a = i % 10;
b = (i / 10) % 10;
c = i / 100;
if(i == a*a*a+b*b*b+c*c*c){
count++;
//这是为了输出好看
if(count%5==0){
System.out.println(i);
}else{
System.out.print(i+" ");
}
}
}
System.out.println();
System.out.print("共有 "+count+" 个水仙花数");
}
}