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

ランダムに選択された3つの数値がAPに含まれるC++プログラムの確率


数字の配列「n」が与えられ、タスクは、ランダムに選択された3つの数字がAPに含まれる確率を見つけることです。

Input-: arr[] = { 2,3,4,7,1,2,3 }
Output-: Probability of three random numbers being in A.P is: 0.107692
Input-:arr[] = { 1, 2, 3, 4, 5 }
Output-: Probability of three random numbers being in A.P is: 0.151515

以下のプログラムで使用されるアプローチは次のとおりです

  • 正の整数の配列を入力します
  • 配列のサイズを計算します
  • 以下の式を適用して、3つの乱数がAPに含まれる確率を求めます

    3 n /(4(n * n)– 1)

  • 結果を印刷する

アルゴリズム

Start
Step 1-> function to calculate the probability of three random numbers be in  AP
   double probab(int n)
      return (3.0 * n) / (4.0 * (n * n) - 1)
Step 2->In main()
   declare an array of elements as   int arr[] = { 2,3,4,7,1,2,3 }
   calculate size of an array as  int size = sizeof(arr)/sizeof(arr[0])
   call the function to calculate probability as probab(size)
Stop

#include <bits/stdc++.h>
using namespace std;
//calculate probability of three random numbers be in AP
double probab(int n) {
    return (3.0 * n) / (4.0 * (n * n) - 1);
}
int main() {
    int arr[] = { 2,3,4,7,1,2,3 };
    int size = sizeof(arr)/sizeof(arr[0]);
    cout<<"probability of three random numbers being in A.P is : "<<probab(size);
    return 0;
}

出力

Probability of three random numbers being in A.P is: 0.107692

  1. QuickSort用のC++プログラム?

    クイックソートは、比較を使用してソートされていないリスト(配列)をソートするソート手法です。クイックソートは、パーティション交換ソートとも呼ばれます。 等しいソート項目の相対的な順序が保持されないため、安定したソートではありません。クイックソートは配列を操作できるため、ソートを実行するために少量の追加メモリが必要です。常に最悪の場合のパーティションを選択するわけではないことを除いて、選択ソートと非常によく似ています。したがって、選択ソートのより適切な形式と見なすことができます。 QuickSortは、最も効率的な並べ替えアルゴリズムの1つであり、配列を小さい配列に分割することに基づいていま

  2. 最初の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 &