C++ 程序计算前 n 个自然数的平方和?
在这个问题中,我们将看到如何计算前 n 个自然数的平方和。这里,我们使用了一个 for 循环,从 1 到 n。在每一步中,我们计算该项的平方,然后将其添加到和中。此程序需要 O(n) 时间才能完成。但如果我们想要在 O(1) 或恒定时间内解决此问题,我们可以使用以下级数公式 −
算法
squareNNatural(n)
begin sum := 0 for i in range 1 to n, do sum := sum + i^2 done return sum end
示例
#include<iostream> using namespace std; long square_sum_n_natural(int n) { long sum = 0; for (int i = 1; i <= n; i++) { sum += i * i; //square i and add it with sum } return sum; } main() { int n; cout << "Enter N: "; cin >> n; cout << "Result is: " << square_sum_n_natural(n); }
输出
Enter N: 4 Result is: 30
广告