水仙花数是三位数,它的各位数字的立方和等于这个三位数本身,例如:371=33+73+13,371就是一个水仙花数。
要判断是否是水仙花数,首先得得到它的每一位上的数。个位数即为对10取余;十位数为对100取余减去个位数再除以10,百位数为减去对100取余后的数再除以100。
代码如下:
public class shuixianhua { public static void main(String args[]){ int x=100; int a,b,c; while(x<=999){ a=x%10; b=(x%100-a)/10; c=(x-x%100)/100; if(a*a*a+b*b*b+c*c*c==x) System.out.println(x); x+=1; } } }
效果如图: