牛客网:牛牛学数列

目录


 题目:

描述:

输入描述:

输出描述:

小结


 

题目:

描述:

     

        输入一个整数n,计算 1+1/(1-3)+1/(1-3+5)+...+1/(1-3+5-...((-1)^(n-1))*(2n-1))的值

 

输入描述:

 

输入一个整数

 

输出描述:

 

输出一个浮点数,保留3位小数。

 

#include <iostream>
#include <math.h>
using namespace std;

int main() {
    int n;
    cin >> n;
    double res = 0;
    double sum = 0;
    double SUM = 0;
    for (double j = 1; j <= n; j++) {
        sum=0;
        for (double i = 1; i <= j; i++) {
            res = (pow((-1.0), i - 1.0) * (2.0 * i - 1.0));
            sum += res;
        }
        SUM+=(1.0/sum);
    }
    printf("%.3f", SUM);
}

要求数列的前n项和,通过对题目理解我们可以得到一个化简后的数学式子:

 

 \sum_{j=1}^{n}\frac{1}{\sum_{i=1}^{n}(-1)^{i-1}*(2i-1)}

通过观察我们可以发现,每一项分母的变化有一个通式来决定,所以我们需要通过一个循环把每一项加起来之后被1除,而这只是其中的一项,然而每一项分母相加的个数是随着项数取决的,于是i要小于j,每一项的sum求和在新的一次循环当中要重置为0,以防被上一次的循环所影响。

小结

 

更多精彩内容等你来来看。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值