使用Java求n的阶乘
要求
随机输入一个正整数n,求出n的阶乘
思路
利用循环解决问题,设循环变量为 i,初值为 n,i 从 n 变化到 0;依次让 i 与 sum 相乘,并将乘积赋给 sum。
- 定义变量 sum,并赋初值 1
- i 自减1
- 直到 i 为0
代码如下
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (true) {
System.out.println("请输入一个正整数");
int n = sc.nextInt();
int sum = 1;
if (n >= 1) {
for (int i = n; i > 0; i--) {
sum = sum * i;
}
System.out.println(sum);
System.exit(0);
} else {
System.out.println("你输入的数不是正整数,请重新输入");
}
}
}
以3为例运行结果如下: