C语言编程中求解数列2, 10, 30, 68,…前N项的和


为了求解这个数列的和,我们首先要分析这个数列。

该数列为:

给定的数列是 2, 10, 30, 68…

例如

For n = 6
Sum = 464

分析给定的数列,你会发现它是由两个数列相加得到的:第一个是n个自然数的和,第二个是n个自然数的立方和。这意味着该数列可以分解为:

2, 10 , 30 ,68 = (1+13) , (2+23), (3 + 33), ( 4 + 43)

所以我们可以将数列的和写成:

sum = 2 + 10 + 30 + 68… = ( 1 + 2 + 3 + 4...)+( 13 + 23 + 33 + 43….)

基于此,计算该数列和的公式也可以定义为这两个公式的和。

求解上述数列和的数学公式为:

n*(n + 1)/2 + (n*(n + 1)/2)^2

示例

#include <stdio.h>
int main() {
   int n = 6;
   int sum = (n*(n + 1)/2) + (n*(n+1)/2)*(n*(n+1)/2);
   printf("the sum of series till %d is %d", n,sum);
   return 0;
}

输出

the sum of series till 6 is 462

更新于: 2019年8月9日

144 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告