2

重複の可能性:
C ++から0と1の間に均一に分散されたランダムなdoubleをどのように生成しますか?

0とpiの間の乱数を生成する方法を理解しようとしていますが、modは整数除算を行うため、通常の方法は機能しません。

double num = rand() % 2*M_PI;

どうすればこれを行うことができますか?

ありがとう。

4

1 に答える 1

4

0から1までの乱数を生成し、その結果に。を掛け2*M_PIます。

0と1の間に一様分布がある場合は、2*M_PI使用している数値タイプで使用できる精度の限界まで、0との間に一様分布もあります。

0と1の間のランダムなユニフォームダブルを生成するために、彼のコメントで@dasblinkenlightによって提案された答えを参照してください。

于 2013-02-05T17:43:06.813 に答える