“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本 身。本题我们只需先求出该数的每一位,在求其立方和并相加,然后于原数字比较,如果相等,则输出。
public class findSplitNumber {
public static void main(String[] args) {
int ret;
int num = 0;
System.out.println("输出所有的水仙花数:");
while(num < 1000){
ret = splitNumber(num);
if(ret == num){
System.out.println(num);
}
num++;
}
}
public static int splitNumber(int num){
int sum = 0;
while(num > 0){
int ret = num % 10;
sum += ret*ret*ret;
num = num / 10;
}
return sum;
}
}