将以下内容翻译为中文:在C中求解序列1.2.3 + 2.3. + … + n(n+1)(n+2)的和

2023年 9月 13日 46.4k 0

将以下内容翻译为中文:在C中求解序列1.2.3 + 2.3. + ... + n(n+1)(n+2)的和

求级数的 n 项之和:1.2.3 + 2.3.4 + … + n(n+1)(n+2)。其中1.2.3代表第一项,2.3.4代表第二项。

让我们看一个例子来更好地理解这个概念,

Input: n = 5
Output: 420

登录后复制

说明

1.2.3 + 2.3.4 + 3.4.5 + 4.5.6 + 5.6.7 = 6 + 24 + 60 + 120 + 210 = 420

n项 = n(n+1)(n+2);其中 n = 1,2,3,…

= n(n^2+3n+2)=n^3 +3n^2 +2n

现在,注意 p>

求和 =n(n+1)/2 ;如果第 n 项 =n

=n(n+1)(2n+1)/6 ;如果第 n 项 =n^2

=n^2(n+1)^2/4 ;如果第 n 项 =n^3

因此所需的总和 =

n^2(n+1)^2 /4 + 3 ×n(n+1)(2n+ 1)/6 +2 × n(n+1)/2

=n^2 (n+1)^2 /4 +n(n+1)(2n+1)/2 + n(n+1)

=n(n+1) { n(n+1)/4 + (2n+1)/2 +1 }

=n( n+1) { (n^2 +n +4n+2 +4)/4}

=1/4 n(n+1){ n^2+5n+6}

=1/4 n(n+1)(n+2)(n+3)

解决这个问题有两种方法,

一种是使用数学公式,另一种是循环。

在数学公式法中,给出了该级数的级数求和公式。

算法

输入:n 元素数量。

Step 1 : calc the sum,
sum = 1/4{n(n+1)(n+2)(n+3)}
Step 2 : Print sum, using standard print method.

登录后复制

示例

实时演示

#include
#include
int main() {
float n = 6;
float area = n*(n+1)*(n+2)*(n+3)/4;
printf("The sum is : %f",area);
return 0;
}

登录后复制

输出

The sum is : 756

登录后复制登录后复制

示例

实时演示

#include
#include
int main() {
float n = 6;
int res = 0;
for (int i = 1; i

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论