2092 - 阶乘数列之和
时间限制 : 1 秒
内存限制 : 128 MB
输入一个正整数n.求1+1/2!+1/3!+....+1/n!
* 输出保留4位小数
题目输入
正整数n
题目输出
数列之和
输入/输出样例
输入格式
2
输出格式
1.5000
C语言解答
#include <stdio.h> int main(int argc, char *argv[]) { float fact(int); int n; float sum=0; scanf("%d",&n); for(;n>0;n--) { sum+=1/fact(n); } printf("%.4f\n",sum); return 0; } float fact(int n) { float sum=1; for(;n>0;n--) { sum*=n; } return sum; }
C++解答
#include<iostream> #include<cstdio> using namespace std; float fact(int n) //求阶乘 { float s=1; for (int i=1; i<=n; i++) s*=i; return s; } int main() { int n; cin>>n; float sum=0; for (int i=1; i<=n; i++) sum+=1/fact(i); printf("%.4f\n",sum); return 0; }