ホームページ  >  記事  >  バックエンド開発  >  C で小数を含むランダムな Double 数値を生成するにはどうすればよいですか?

C で小数を含むランダムな Double 数値を生成するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-03 11:33:03866ブラウズ

How to Generate Random Double Numbers with Decimals in C  ?

C での小数を含むランダムな Double 数値の生成

C では、「xxxxx,yyyyy」形式で 2 つの double の間に乱数を生成するには、次の処理が必要です。 C 11 および TR1 拡張機能で導入されたライブラリ機能を利用します。

ソリューションの概要

指定された形式で乱数を生成するには、次の手順に従います。

  1. 必要な範囲の下限と上限を初期化します。
  2. 指定した範囲で std::uniform_real_distribution のインスタンスを作成します。
  3. 次を使用して乱数生成エンジンをインスタンス化します。 std::default_random_engine.
  4. 分布およびランダム エンジンを使用して、指定された範囲内のランダムな double 数値を生成します。

コード例

<code class="cpp">#include <random>

int main()
{
   double lower_bound = 0;
   double upper_bound = 10000;
   std::uniform_real_distribution<double> unif(lower_bound, upper_bound);
   std::default_random_engine re;
   double a_random_double = unif(re);

   return 0;
}</code>

追加情報

C での乱数生成の詳細については、次のリソースを参照してください。

  • [John D. Cook の「乱数」 C TR1 を使用した生成":](https://www.johndcook.com/blog/2011/08/19/random-number-generation-using-cpp-tr1/)
  • [Stroustrup の "乱数"世代":](https://www.stroustrup.com/4282.html)

以上がC で小数を含むランダムな Double 数値を生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。