C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++で級数1+1/2 + 1/3 + 1/4 + .. + 1/nの合計を求めるプログラム


この問題では、数nが与えられます。私たちのタスクは、シリーズ1 + 1/2 + 1/3 + 1/4 + .. + 1/nの合計をC++で見つけるプログラムを作成することです

コードの説明 −ここでは、n番目の項までの級数1 + 1/2 + 1/3 + 1/4 + .. + 1/nの合計を求めます。このシリーズは調和数列シリーズです。

調和数列 は、その逆数が等差数列になる級数です。つまり調和数列A1、A2、A3 ... Anの場合、等差数列1 / A1、1 / A2、1/A3があります。

まず、問題を理解するために例を見てみましょう。

入力

n = 5

出力

2.59286

説明

合計=1+½+⅓+¼+⅕+⅙+1/7=2.59286

ソリューションアプローチ

この問題を解決するために、HPの合計の仕様がないため、ループを使用します。

アルゴリズム

初期化 − sumVal =0;

  • ステップ1 −ループfori->1からn。
    • ステップ1.1 − sumVal、sumVal + =1/iを更新します。
  • ステップ2 −sumValを印刷します。

ソリューションの動作を説明するプログラム

#include <iostream>
using namespace std;
float calcSeriesSum(int n){
   float sumVar = 0.00;
   for(float i = 1; i <= n; i++){
      sumVar += (1/i);
   }
   return sumVar;
}
int main(){
   int n = 7;
   cout<<"The sum of series till "<<n<<" is "<<calcSeriesSum(n);
   return 0;
}

出力

The sum of series till 7 is 2.59286

  1. 定積分に対するシンプソンの1/3ルール

    台形公式と同様に、シンプソンの1/3の公式も、aからbの範囲の積分値を見つけるために使用されます。台形とシンプソンの1/3の規則の主な違いは、台形の規則では、セクション全体がいくつかの台形に分割されますが、この場合、各台形も2つの部分に分割されます。 このルールでは、次の式に従います。 ここで、hは間隔の幅、nは間隔の数です。 を使用してhを見つけることができます 入力と出力 Input: The function f(x): (x+(1/x). The lower and upper limit: 1, 2. The number of intervals: 20. Outp

  2. シリーズ1/1の合計を見つけるPythonプログラム! + 2/2! + 3/3! + 4/4! +……。+n/ n!

    この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 −整数入力nが与えられた場合、級数1/1の合計を見つける必要があります。 + 2/2! + 3/3! + 4/4! +……。+n/ n! ここではforループを実装しているため、時間計算量としてO(n)を取得します。 ここで効率を達成するために、同じループ内で階乗を計算します。 ここでは、以下に説明するようにsumofseries関数をフレーム化します- 例 def sumOfSeries(num):    res = 0    fact =