求前 n 個自然數之立方和的 C 程式?


在這個問題中,我們將瞭解如何求出前 n 個自然數的立方和。我們在此處使用一個 for 迴圈,從 1 到 n。在每一步中,我們計算項的立方然後將其新增到和中。此程式需要 O(n) 時間才能完成。但如果我們想在 O(1) 或常量時間內解決此問題,我們可以使用以下級數公式 −

演算法

cubeNNatural(n)

begin
   sum := 0
   for i in range 1 to n, do
      sum := sum + i^3
   done
   return sum
end

示例

 即時測試

#include<stdio.h>
long cube_sum_n_natural(int n) {
   long sum = 0;
   int i;
   for (i = 1; i <= n; i++) {
      sum += i * i * i; //cube i and add it with sum
   }
   return sum;
}
main() {
   int n;
   printf("Enter value of n: ");
   scanf("%d", &n);
   printf("Result is: %ld", cube_sum_n_natural(n));
}

輸出

Enter value of n: 6
Result is: 441

更新日期: 2019 年 7 月 30 日

2K+ 瀏覽

開啟你的 職業生涯

完成課程即可獲得認證

開始學習
廣告