先初始化目标数组to为空,count:=0;postion:=0; while count<100 do begin i:=randmom(100); if to[i]=' ' then begin to[i]:=from[position]; postion:=position+1; count:=count+1; end; end;
1. a[100] 有内容 ,b[100] 空的2. 生成 1..100 随机数 i 3. b[1]=a[i]; a[i]=a[100] 4. 生成 0..99 随机数 i 5. b[2]=a[i]; a[i]=a[99] 6. 生成 0..98 随机数 i 7. b[3]=a[i]; a[i]=a[98] .... ....
random(100)好像不會出現100的....random(100)+1
randomize; for x:=1 to 100 do b[x]:=a[random(100)+1] 不知是否可以..
Random(范围); //产生随机数
随机函数取走一个作为b[1]
剩下再作为一个整体,又随机取走一个作为 b[2]...
........b[99]..b[100]
while count<100 do begin
i:=randmom(100);
if to[i]=' ' then begin
to[i]:=from[position];
postion:=position+1;
count:=count+1;
end;
end;
3. b[1]=a[i]; a[i]=a[100]
4. 生成 0..99 随机数 i
5. b[2]=a[i]; a[i]=a[99]
6. 生成 0..98 随机数 i
7. b[3]=a[i]; a[i]=a[98]
....
....
for x:=1 to 100 do
b[x]:=a[random(100)+1]
不知是否可以..
办法不错!
function RandomFrom(const AValues: array of string): string; overload;