水仙花数:
是一个3位数及以上的数,它等于每个数字的n次方之和。
例如:153是一个水仙花数,153=1³+5³+3³
此处给出两个方法,以java为编程语言
第一种:
for(int i=1; i<=9; i++)/*注意百位数从1开始*/
for(int j=0; j<=9; j++)
for(int k=0; k<=9; k++)
if(i*i*i+j*j*j+k*k*k == 100*i+10*j+k)
System.out.print(i*100+j*10+k+" ");
第二种:
int n = 100;
while(n<=999) {
int a = n / 100 % 10;
int b = n / 10 % 10;
int c = n % 10;
if((a*a*a)+(b*b*b)+(c*c*c) == n) {
System.out.println(n);
}
n++;
}
System.out.println("是水仙花数");