其他分享
首页 > 其他分享> > 厦大C语言上机 1367 几何级数的计算机验证法

厦大C语言上机 1367 几何级数的计算机验证法

作者:互联网

1367.几何级数的计算机验证法


时间限制: 1000 MS          内存限制: 65536 K
        
提交数: 653 (0 users)          通过数: 270 (259 users)


问题描述
从前有棵树,叫高数,上面挂了许多人!这个传说一直言传至今!不过在小明看来,他肯定不会是那个会挂的人,他比其他提前预习了后面的章节,其中,他看了几何级数|x|<1 从理论上证明,他已经看懂了。但是,他想到,既然自己是学计算机的,何不借用计算机来进行验证?于是他开始编程……当等式左右两项之差的绝对值小于10^-6时,认定等式左右两项相等,请输出此时等式右边的项数n是多少!


输入格式
第一行输入一个整数T,代表有T组测试数据
对于每组测试数据,输入一个(-1,1)间的浮点数x


输出格式
输出每组测试数据的结果,各占一行


样例输入
9
0.1
0.2
0.3
0.4
0.5
-0.6
-0.7
-0.8
-0.9


样例输出
6
8
11
15
20
26
37
59
125


来源

xmu

#include <stdio.h>
#include <math.h>

int main()
{
    double x, real_value, sum_value, power;
    int t, i;

    scanf("%d", &t);
    while (t--)
    {
        scanf("%lf", &x);

        real_value = 1.0 / (1.0 - x);
        sum_value = 0;
        power = 1;
        i = 0;
        do
        {
            sum_value += power;
            if (fabs(real_value - sum_value) < 1e-6)
                break;
            power *= x;
            ++i;
        } while (1);

        printf("%d\n", i);
    }

    return 0;
}



标签:real,power,sum,value,C语言,1367,测试数据,厦大,几何级数
来源: https://blog.51cto.com/liulizhi1996/3035730