5

フロート数の範囲(delphi xe3)の間でランダム化された数を生成するにはどうすればよいですか?

たとえば、の間の数をランダム化し[0.10 to 0.90]ます。次のような結果を出す必要があります。

[ 0.20 , 0.32 , 0.10 , 0.50 ]

解決策をありがとう....

4

4 に答える 4

6

別のオプションは、次のように使用することですRandomRange(returns AFrom <= r < ATo:)。

RandomRange(10, 90 + 1) / 100

また

RandomRange(10, 90 + 1) * 0.01

0.10から0.90(0.90を含む)の範囲の数値を返します

于 2012-12-07T13:53:52.473 に答える
5
var
  float : Double;

  float := Random;  // Random float in range: 0 <= float < 1
  float := 0.1 + float*0.8 // 0.1 <= float < 0.9

乱数ジェネレーターを初期化するには、関数を初めて呼び出す前にパラメーターを 1 回呼び出すRandomizeか、パラメーターを設定します。RandSeedRandom

そうしないと、プログラムを実行するたびに同じシーケンスが生成されます。ただし、別のコンパイラ バージョン用に再コンパイルする場合、このシーケンスは保証されないことに注意してください。

于 2012-12-06T22:23:43.727 に答える