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

C ++でループ内に異なる乱数を生成する方法は?


C++を使用してさまざまな乱数を生成する方法を見てみましょう。ここでは、0からある値の範囲の乱数を生成しています。 (このプログラムでは、最大値は100です。)

この操作を実行するために、srand()関数を使用しています。これはC++ライブラリにあります。関数voidsrand(unsigned int seed) 関数randで使用される乱数ジェネレーターをシードします 。

srand()の宣言は以下のようになります-

void srand(unsigned int seed)

シードと呼ばれるパラメータを取ります。これは、疑似乱数ジェネレーターアルゴリズムによってシードとして使用される整数値です。この関数は何も返しません。

数値を取得するには、rand()メソッドが必要です。 0から最大の範囲の数値を取得するために、剰余を取得するために剰余演算子を使用しています。

シード値については、time(0)関数の結果をsrand()関数に提供しています。

#include<iostream>
#include<cstdlib>
#include<ctime>
using namespace std;
main() {
   int max;
   max = 100; //set the upper bound to generate the random number
   srand(time(0));
   for(int i = 0; i<10; i++) { //generate 10 random numbers
      cout << "The random number is: "<<rand()%max << endl;
   }
}

出力

The random number is: 6
The random number is: 82
The random number is: 51
The random number is: 46
The random number is: 97
The random number is: 60
The random number is: 20
The random number is: 2
The random number is: 55
The random number is: 91

  1. Androidで特定の範囲の乱数を生成するにはどうすればよいですか?

    この例は、Androidで特定の範囲の乱数を生成する方法を示しています。 ステップ1 − Android Studioで新しいプロジェクトを作成し、[ファイル]⇒[新しいプロジェクト]に移動して、新しいプロジェクトを作成するために必要なすべての詳細を入力します。 ステップ2 −次のコードをres / layout/activity_main.xmlに追加します。 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout    xmlns:android=&quo

  2. C++でのデュードニー番号

    与えられた数の底の数理論で定義された数は、最初の自然数の桁の合計が2番目の数の桁の合計に等しくなるように、別の自然数の完全な3乗に等しい自然数です。 (ウィキペディア)。 番号はヘンリー・デュードニーによって発見されました 。その数式 は- ここでは、整数nが与えられます。私たちの仕事は、与えられた番号nが人物番号であるかどうかを確認することです。 問題を理解するために例を見てみましょう 入力: N =17592 出力: いいえ 説明: 与えられた番号はダドニー番号ではありません。 ソリューションアプローチ- 解決策は、デュードニー番号の基本的な定義にあります。