我在寻求帮助。我希望创建一个数字概率生成器,但让我解释一下我要求的帮助类型。我已经想出了一个可以随机生成数字的源代码,但是我想让一些数字比其他数字更有机会生成。
到目前为止,我已经得到了这个,但这只会产生这些数字,这就是我的大脑爆炸的地方。这个代码不会区分数字,它不会生成一个12..它生成1或2。我想让它"看到"让我们说…A 1 A 2和A 12
请帮帮我。
var
i: integer;
const
str = '0102030405060708091011121314151617181920212223242 526272829303132333435363738394041424344454647484950';
max = 5;
begin
Edit1.Text := '';
Randomize;
for i := 1 to max do
Edit1.Text := Edit1.Text + str[random(length(str))+1];
真,Hopsins
要从str
中提取一个数字,您需要两个数字。要选择'01',您将从位置#1开始抽出两个字符。对于"02",你需要从3号位置开始。"03"从位置5开始。您可能需要使用表达式:
copy ( str, random ( length(str) div 2 ) * 2 + 1, 2 )
这里,length(str)
为100,length(str) div 2
为50。random
生成一个从0到49的数字。将其乘以2,再加上1,得到第一个字符的索引。然后使用copy
从该位置拉出两个字符。