u Calculate e

来源:互联网 发布:ubuntu 16.04 聊天工具 编辑:程序博客网 时间:2024/06/10 06:38

Description

A simple mathematical formula for e is



where n is allowed to go to infinity. This can actually yield very accurate approximations of e using relatively small values of n.
 

Input

Input contains multiple test cases. Each test case starts with a number N (0 < N <= 1000) -- the total number of balloons distributed. The next N lines contain one color each. The color of a balloon is a string of up to 15 lower-case letters.

A test case with N = 0 terminates the input and this test case is not to be processed.
 

Output

Output the approximations of e generated by the above formula for the values of n from 0 to 9. The beginning of your output should appear similar to that shown below.
 

Sample Input

5greenredblueredred3pinkorangepink0
 

Sample Output

n e- -----------0 11 22 2.53 2.6666666674 2.708333333
 
//注意细节;
#include<iostream>#include<cstdio>using namespace std;int fec(int n){    int i,sum=1;    if(n==0)        return 1;    for(i=1;i<=n;i++)    {        sum=sum*i;    }  return sum;}int main(){    int i;    double e=0;    printf("n e\n");    printf("- -----------\n");    for(i=0;i<=9;i++)    {      e=1.0/fec(i)+e;      if(i==0||i==1)      {        printf("%d %.0lf\n",i,e);      }     else if(i==2)          printf("%d %.1lf\n",i,e);      else         printf("%d %.9lf\n",i,e);    }    return 0;}