2092 - 阶乘数列之和
输入一个正整数n.求1+1/2!+1/3!+....+1/n!
* 输出保留4位小数
Input
正整数n
Output
数列之和
Examples
Input
2
Output
1.5000
Solution 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; }
Solution 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; }