// 编程:求一个三位数,该三位数等与其每位数字的阶乘之和。
public class Test {
public static void main(String[] args) {
for (int i = 100; i <= 999; i++) { //得到每一个三位数的各位 十位 百位
int a = i / 100;
int b = i / 10 % 10;
int c = i % 10;
//各位 十位 百位数字的阶乘和如果等于该三位数
if (jiecheng(a) + jiecheng(b) + jiecheng(c) == i){
//打印这个三位数的数值
System.out.println(i);
}
}
}
// 递归求阶乘
public static int jiecheng(int n) {
if (n == 1 || n == 0) { //重点,如果不写
//n==0将不能实现,将出现jvm内存溢出
return 1;
} else {
return n * jiecheng(n - 1);
}
}