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

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


ここでは、与えられたシリーズの合計を取得する方法を見ていきます。 nの値はユーザーによって指定されます。階乗関数を作成することでこの問題を解決し、ループの各ステップで階乗を取得できます。しかし、階乗計算は通常の加算よりもコストのかかる作業です。次の階乗では前の階乗項を使用します。 3のように!は(3 * 2 * 1)、および4!は4*3!です。だから私たちが3つを保存すると!いくつかの変数に、それを使用して次の数値を追加することで、次の階乗を簡単に取得できます。

アルゴリズム

sum_series_fact(n)

begin
   res := 0
   denominator := 1
   for i in range 1 to n, do
      denominator := denominator * i
      res := res + i / denominator
   done
return res
end

#include<iostream>
using namespace std;
float series_result(int n) {
   float denominator = 1;
   float res = 0;
   for(int i = 1; i<= n; i++) {
      denominator *= i;
      res += float(i/denominator);
   }
   return res;
}
main() {
   int n;
   cout << "Enter number of terms: ";
   cin >> n;
   cout << "Result: " << series_result(n);
}

出力

Enter number of terms: 5
Result: 2.70833

出力

Enter number of terms: 3
Result: 2.5

  1. オイラー数の値を計算するPythonプログラムe。式を使用します:e =1 + 1/1! + 1/2! +……1/n!

    オイラーの数を実装する必要がある場合は、階乗を計算するメソッドが定義されます。 これらの階乗数の合計を求める別の方法が定義されています。 以下は同じのデモンストレーションです- 例 def factorial_result(n):    result = 1    for i in range(2, n + 1):       result *= i    return result def sum_result(n):    s = 0.0    for

  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 =