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

更新於: 30-7 月-2019

513 次瀏覽

開啟您的職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.