A - Calculate(5p) HDU - 1012

版权声明:文章全是博主转载, 请随意操作。 https://blog.csdn.net/ggqinglfu/article/details/82119374

A - Calculate(5p)

 HDU - 1012

自然常数e有一个简单的公式(其实是exp在x=1位置的泰勒展开式) 

 

n趋于无穷时,整个式子的值将趋于e的值。你的任务时是计算n取0-9的时候,整个式子的值分别是多少。程序没有输入 

Output

输出n分别取0到9时,整个式子的值,格式如下

 Sample Output

n e
- -----------
0 1
1 2
2 2.5
3 2.666666667
4 2.708333333

没办法, 按照格式打印一遍就好。

一个函数求阶乘;一个嵌套for循环,求taylor和;

我就是觉得这个题真的挺好。哎, 真的, 真爱啊!

#include <iostream>
#include <string.h>
#include <cstdio>
#include <cstdlib>
using namespace std;

int jie(int t)
{
    if(t == 0 || t == 1)
        return 1;
    else return t *jie(t - 1);
}
int main()
{
    double a[10];
    memset(a,0,sizeof(a));
    printf("n e\n- -----------\n");
    for(int i = 0; i <= 9; i++)
    {
        for(int j = 0; j <= i; j++)
        {
            a[i] += (double)1/jie(j);
        }
    }
    for(int i = 0; i <2; i++)
    {
        printf("%d %.0lf\n",i, a[i]);
    }
    printf("2 %.1lf\n", a[2]);
    for(int i = 3; i <= 9; i++)
    {
        printf("%d %.9lf\n",i, a[i]);
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/ggqinglfu/article/details/82119374