- 我写的版本:
import java.sql.SQLOutput;
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
int i,sum=0,flag=0;
for(i = 100;i<=1000;i++)//从100到1000循环
{
flag=i;
while(flag!=0)//找每一位上的数字
{
int temp = flag % 10;
flag = flag / 10;
sum = sum+temp*temp*temp;//将每一位上的数字三次方求和
}
if(sum==i) {//判断是否为水仙花数
System.out.println(sum);
}
sum=0;
}
}
}
2.老师版本:
import java.sql.SQLOutput;
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
for (int i = 100; i < 1000; i++) {//a, b, c分别代表三位数的个位、十位和百位
int a = i % 10;
int b = i / 10 % 10;
int c = i / 100;
if (a * a * a + b * b * b + c * c * c ==i)
System.out.println(i + "是水仙花数");
}
}
}