输入一个正整数n 计算1+2!+3!+…+n!
时间: 2023-08-01 11:06:53 浏览: 159
好的,以下是Python代码实现:
```python
n = int(input("请输入一个正整数n:"))
sum = 0
factorial = 1
for i in range(1, n+1):
factorial *= i
sum += factorial
print("1+2!+3!+...+n!的结果为:", sum)
```
例如,如果输入n为5,则输出结果为153。
相关问题
输入一个正整数,计算1!+2!+n!
请问您需要什么语言的代码呢?以下为Python、Java和C++的代码:
Python代码:
n = int(input("请输入一个正整数:"))
factorial = 1
sum = 0
for i in range(1, n+1):
factorial *= i
sum += factorial
print("1! + 2! + ... + n! =", sum)
Java代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入一个正整数:");
int n = input.nextInt();
int factorial = 1;
int sum = 0;
for (int i = 1; i <= n; i++) {
factorial *= i;
sum += factorial;
}
System.out.println("1! + 2! + ... + n! = " + sum);
}
}
C++代码:
#include <iostream>
using namespace std;
int main() {
int n, factorial = 1, sum = 0;
cout << "请输入一个正整数:" << endl;
cin >> n;
for (int i = 1; i <= n; i++) {
factorial *= i;
sum += factorial;
}
cout << "1! + 2! + ... + n! = " << sum << endl;
return 0;
}
c语言输入一个正整数,计算1!+2!+n!
以下是一个简单的C语言程序,可以输入一个正整数n,然后计算1!到n!的和。
```
#include <stdio.h>
int main() {
int n, i, j, sum = 0, fac = 1;
printf("请输入一个正整数:");
scanf("%d", &n);
for(i = 1; i <= n; i++) {
for(j = 1; j <= i; j++) {
fac *= j;
}
sum += fac;
fac = 1;
}
printf("1! + 2! + ... + %d! = %d\n", n, sum);
return 0;
}
```
程序的思路是:使用两个循环,外层循环从1到n,内层循环从1到当前的i,计算i的阶乘,然后将阶乘加到sum中,最后输出sum的值。注意,在每次计算阶乘之前,需要将fac的值重置为1。