我们如何在Float数字的范围内生成随机数(在delphi xe3中)?
例如,随机化数字之间[0.10 to 0.90]
.我需要给出如下结果:
[ 0.20 , 0.32 , 0.10 , 0.50 ]
谢谢你的解决方案
var
float : Double;
float := Random; // Random float in range: 0 <= float < 1
float := 0.1 + float*0.8 // 0.1 <= float < 0.9
Run Code Online (Sandbox Code Playgroud)
要初始化随机数生成器,请在调用之前调用Randomize
或设置RandSeed
参数Random
在第一次函数。
不这样做,每次运行程序时都会生成相同的序列。但是请注意,在为另一个编译器版本重新编译时不能保证此顺序。
另一个选择是使用RandomRange
(return :) AFrom <= r < ATo
如下:
RandomRange(10, 90 + 1) / 100
Run Code Online (Sandbox Code Playgroud)
要么
RandomRange(10, 90 + 1) * 0.01
Run Code Online (Sandbox Code Playgroud)
将返回0.10到0.90范围内的数字(包括0.90)
归档时间: |
|
查看次数: |
4738 次 |
最近记录: |