使用java4.编写程序实现以下功能:输入一个自然数,输出该自然数的阶乘。
时间: 2024-10-16 07:03:39 浏览: 29
在Java中,计算一个自然数的阶乘可以使用循环结构如for或while,这里是一个简单的例子:
```java
import java.util.Scanner;
public class FactorialCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个非负整数:");
int number = scanner.nextInt(); // 获取用户输入的整数
if (number < 0) {
System.out.println("输入错误,阶乘只对非负整数有意义。");
} else {
long factorial = calculateFactorial(number);
System.out.printf("数字 %d 的阶乘是: %d\n", number, factorial);
}
scanner.close();
}
// 计算阶乘的递归方法
private static long calculateFactorial(int n) {
if (n == 0 || n == 1) { // 阶乘的基本情况,0和1的阶乘都是1
return 1;
} else {
return n * calculateFactorial(n - 1); // 递归调用自身,计算n*(n-1)!的值
}
}
}
```
当你运行这个程序,它会提示你输入一个自然数,然后计算并输出它的阶乘。如果输入的是负数,它会显示错误信息。
阅读全文