用java 编写程序实现以下功能:输入一个自然数,输出该自然数的阶乘。
时间: 2024-09-24 19:12:19 浏览: 97
在Java中,你可以编写一个简单的程序来计算任意自然数的阶乘。阶乘是一个正整数n与其所有小于它的正整数相乘的结果,通常表示为n!。下面是一个函数实现这个功能:
```java
import java.util.Scanner;
public class FactorialCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个自然数:");
int num = scanner.nextInt();
if (num < 0) {
System.out.println("抱歉,负数没有阶乘。");
} else {
long factorial = calculateFactorial(num);
System.out.printf("数字 %d 的阶乘是 %d.", num, factorial);
}
scanner.close();
}
// 计算阶乘的静态方法
private static long calculateFactorial(int n) {
if (n == 0 || n == 1) {
return 1;
} else {
return n * calculateFactorial(n - 1);
}
}
}
```
在这个程序中,我们首先从用户那里获取输入,然后检查是否为非负数。如果是,我们调用`calculateFactorial`方法计算阶乘并打印结果。如果输入是负数,则输出错误信息。
阅读全文