java程序,从键盘输入一个正整数n,计算n!(n!=1*2*3*…*n)
时间: 2023-10-21 11:31:42 浏览: 227
好的,以下是使用 Java 语言实现的代码:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入一个正整数n:");
int n = input.nextInt();
int result = 1;
for (int i = 1; i <= n; i++) {
result *= i;
}
System.out.printf("%d! = %d", n, result);
}
}
```
你可以将这段代码复制到 Java 编辑器中运行,然后输入一个正整数n,程序会计算n!的值并输出结果。希望能够帮到你!
相关问题
用Java语言编写一段程序:从键盘输入一个正整数n(n<=50),计算1!+2!+3!+…+n!的结果。本题不得采用大数类如BigInteger等,必须用数组完成计算。
以下是使用Java语言编写的计算1!+2!+3!+…+n!的程序:
```
import java.util.Scanner;
public class FactorialSum {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入一个正整数n(n<=50):");
int n = input.nextInt();
input.close();
int[] factorial = new int[n + 1]; // 阶乘数组
factorial[0] = 1;
for (int i = 1; i <= n; i++) {
factorial[i] = factorial[i - 1] * i; // 计算阶乘
}
int sum = 0; // 阶乘和
for (int i = 1; i <= n; i++) {
sum += factorial[i]; // 累加阶乘
}
System.out.println("1!+2!+3!+...+" + n + "! = " + sum);
}
}
```
程序中首先从键盘输入一个正整数n,然后定义一个长度为n+1的数组,用于存储1到n的阶乘值。接着,使用循环计算1到n的阶乘,并将结果保存在数组中。最后,再使用循环累加数组中的阶乘值,得到最终的阶乘和。最终输出1!+2!+3!+…+n!的结果。
注意:由于n的取值范围较小,因此使用int类型即可,不需要使用BigInteger等大数类。
编写一个Java 程序,从键盘输入正整数n,求n!。
在Java中,你可以编写一个递归函数来计算阶乘。阶乘是一个数的所有小于及等于它的正整数的积。下面是一个简单的程序示例:
```java
import java.util.Scanner;
public class FactorialCalculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个正整数:");
int n = scanner.nextInt();
// 检查输入是否为正整数
if (n < 0) {
System.out.println("请输入正整数。");
return;
}
long result = factorial(n);
System.out.printf("n! = %d\n", result);
}
// 递归计算阶乘
private static long factorial(int num) {
if (num == 0 || num == 1) { // 阶乘的基本情况:0和1的阶乘都是1
return 1;
} else {
return num * factorial(num - 1); // 递归调用,计算 num * (num - 1)!
}
}
}
```
当你运行这个程序并输入一个正整数n,它会计算并打印出n的阶乘。
阅读全文