C++での数値の調和平均のプログラム
自然数の配列が与えられ、タスクは与えられた数の調和平均を計算してそれを印刷することです。
調和とはどういう意味ですか?
調和平均とは、算術平均の逆数による逆数を意味します。
$$ Harmonic \:平均=\ frac {n} {\ frac {1} {a} + \ frac {1} {b} + \ frac {1} {c} + ...} $$
ここで、nは指定された要素の総数であり、a、b、c、..は配列内の実際の要素です。
調和平均を計算する手順は次のとおりです −
-
要素の逆数を実行します
-
往復するすべての要素を一緒に追加します
-
次に、配列内の要素の総数を往復要素の合計で割ります
入力
arr[] = {2.0, 3.4, 5.3, 2.1}
出力
Harmonic mean is: 2.74163
入力
arr[] = {13.5, 14.5, 14.8, 15.2, 16.1}
出力
Harmonic mean is : 14.7707
アルゴリズム
Start Step 1→ declare function to calculate harmonic mean of numbers float harmonic_mean(float arr[], int size) Declare float sum = 0 Loop For int i = 0 and i < size and i++ Set sum = sum + (float)1 / arr[i] End return (float)size/sum Step 2→ In main() Declare float arr[] = {2.0, 3.4, 5.3, 2.1} Declare int size = sizeof(arr) / sizeof(arr[0]) Call harmonic_mean(arr, size) Stop
例
#include <bits/stdc++.h> using namespace std; //calculate harmonic mean float harmonic_mean(float arr[], int size){ float sum = 0; for (int i = 0; i < size; i++) sum = sum + (float)1 / arr[i]; return (float)size/sum; } int main(){ float arr[] = {2.0, 3.4, 5.3, 2.1}; int size = sizeof(arr) / sizeof(arr[0]); cout<<"Harmonic mean is : "<<harmonic_mean(arr, size); return 0; }
出力
上記のコードを実行すると、次の出力が生成されます-
Harmonic mean is: 2.74163
-
二分法のためのC++プログラム
0であり、関数f(x)はaとbの間にある必要があります。つまりf(x)=[a、b ]。タスクは、二分法を使用して、関数f(x)の区間aとbの間にあるルートの値を見つけることです。 二分法とは何ですか? 二分法は、「a」と「b」で定義された指定された制限内の関数f(x)の根の値を見つけるために使用されます。関数の根は、f(a)=0となるような値aとして定義できます。 例 Quadratic equation F(x) = - 8 This equation is equals to 0 when the value of x will be 2 i.e. - 8 =
-
最初のn個の自然数の二乗和のためのC++プログラム?
この問題では、最初のn個の自然数の2乗の合計を取得する方法を確認します。ここでは、1からnまで実行されるforループを使用しています。各ステップで、項の2乗を計算し、それを合計に追加します。このプログラムは、完了するまでにO(n)時間かかります。しかし、これをO(1)または一定時間で解きたい場合は、この級数式-を使用できます。 アルゴリズム squareNNatural(n) begin sum := 0 for i in range 1 to n, do sum := sum + i^2 &