水仙花数,就是“有一个三位数,它的每一位上的数字的平方的和等于它本身”
例如 “153=1*1+5*5+3*3”也就是int i=(a*a*a)+(b*b*b)+(c*c*c)
底层逻辑清楚了,代码也就清楚了,如下
public class shuixianhua{
public static void main(String[] args){
int sum=0;
for (int i=100;i<1000;i++){
int a=i%10; //个位
int b=i/10%10; //十位
int c=i/100%10; //百位
if (i==(a*a*a)+(b*b*b)+(c*c*c)){ //如果满足水仙花顺序,则输出这个数 i
System.out.print(i+" ");
sum++;
}
}
System.out.println("三位数的的水仙花数有"+sum+"个");
}
}