📌  相关文章
📜  系列的总和1.2.3 + 2.3.4 +…+ n(n + 1)(n + 2)(1)

📅  最后修改于: 2023-12-03 15:11:34.352000             🧑  作者: Mango

计算系列的总和

本程序的主题是计算如下数列的总和: $$ 1\cdot2\cdot3 + 2\cdot3\cdot4 + \cdots + n(n + 1)(n + 2) $$

思路

将每一项展开,可以得到: $$ n^3 + 3n^2 + 2n $$

因此,将每一项展开后相加即可。

实现

下面是使用Python实现的程序:

def calculate_sum(n):
    '''
    计算前n项的和
    '''
    sum = 0
    for i in range(1, n+1):
        sum += i**3 + 3*i**2 + 2*i
    return sum
测试

我们可以测试一下这个函数,看看是否正确:

print(calculate_sum(3))   # 90
print(calculate_sum(4))   # 252
结论

通过计算可得,前$n$项的和为: $$ S_n = \frac{n(n+1)}{2}[n(n+1) + 2(2n+1)] $$

我们可以使用Python代码验证一下:

def calculate_sum_formula(n):
    '''
    使用公式计算前n项的和
    '''
    return n*(n+1)//2*(n*(n+1) + 2*(2*n+1))

print(calculate_sum_formula(3))   # 90
print(calculate_sum_formula(4))   # 252

因此,我们得出了使用公式计算总和的方法。