求出0~999之间的所有“水仙花数”并输出。
(“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本身,如: 153=1^3+5^3+3^3 ,则153是一个“水仙花数”。)
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();//999
for (int i = 0; i <= n; i++) {
//判断i是几位数,求得每个位上的数字,加起来==原来的数字
int tmp = i;
int count = 0;
while (tmp != 0) {
count++;
tmp = tmp/10;
}
tmp = i;
int sum = 0;
while (tmp != 0) {
sum += Math.pow(tmp % 10, count);
tmp /= 10;
}
if (sum == i) {
System.out.print(i + " ");
}
}
}