思路:1,首先求阶层,三位数总共需要求3次阶层,3次都是重复的操作,我们可以想到用函数的思想实现。
2,三位数从100开始到999使用for循环来打印
3,在for循环判断需要满足的条件
public class Test2 {
public static void main(String[] args) {
for(int i=100;i<=999;i++) { //for循环打印三位数,从100到999
if(jieCeng(i/100)+jieCeng((int)i/10%10)+jieCeng((int)i%10)==i) {
//注意这里我们使用%运算时产生的结果是浮点数,而我们函数返回值类型是int,所以需要将得数强转为int类型
//确定判断条件,如果满足就打印
//一个数n求个位,十位,百位,千位....
//只要先将将你要求的位数算成个位,然后再对10求余就好了,eg:3987;对千位求数字3987/1000%10;求百位数字3987/100%10....
System.out.println("这个三位数是:"+i);
}
}
}
//求阶层的函数
public static int jieCeng(int n) {
int result=1; //先定义一个值来接收最后阶层的结果,因为是乘法所以初始值为1
for(int i=1;i<=n;i++) {
result*=i;
}
return result;
}
结果:
结语:
进来的小伙伴一定会实现你们的目标的!一起加油!