pascal中如何产生随机数

如题所述

pascal中使用random(100)可产生[0,99]之间的伪随机整数。
如要产生整数a~b(a<b)之间的随机整数,可以使用x:=random(b-a+1)+a;
for i:=1 to n do
write(random(101),' '); 可产生0~100之间的随机整数。

但是这样的程序段,多次运行的结果是完全一样的。
如要使每次运行产生不同的随机数序列,可以在使用随机函数之前,用系统时钟初始化随机数发生器。具体使用方法是使用randomize; 语句。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-11-08
pascal中随机数函数是random
使用之前先用randomize;语句,是初始化,其实不初始化也可以…你了解怎么生成随机数就知道为什么了。
然后random(n)表示生成一个0~n-1的随机整数,用法:
a := random(10);
random表示生成一个0~1的随机实数,用法:
a := random;本回答被网友采纳
第2个回答  2011-11-09
pascal中随机数函数是random
使用之前先用randomize;语句,是初始化然后random(n)表示生成一个0~n-1的随机整数,用法:
var a:longint;
begin
randomize;
a:=random(n)
write(a);
end.
a即为一个0~n-1的随机整数
第3个回答  2011-11-08
var
a:longint;
begin
randomize; {初始化随机数发生器}
a:=trunc(random*10); {产生一个1~9的随机数}
write(a);
end.
第4个回答  2011-11-13
var
a:array [1..10000] of longint;
i,j,k:longint;
begin
randomize;{随机数初始化};
for i:=1 to 随机数个数 do a[i]:=random(范围);{在范围之内的数据中随机产生随机数个数个随机数}
for i:=1 to 随机数个数 do write(a[i],' ');
end.

pascal中如何产生随机数
pascal中使用random(100)可产生[0,99]之间的伪随机整数。如要产生整数a~b(a

randomizepascal中的用法
在Pascal编程中,randomize关键字起着初始化随机数生成器的关键作用。如果没有明确调用randomize,程序会使用上一次运行时的随机种子,导致每次运行的结果都可能相同。Pascal的随机数生成函数是基于线性同余法,其生成的范围是从0开始,直到指定的最大值减一。例如,如果你需要生成0到100之间的随机数,不能简...

pascal 中如何随机生成一个数
(随机产生一个数,范围为:0 到 10000000 若想产生正整数,可设为:n:=random(10000000)+1;)writeln(n);end.

pascal如何产生若干个随机数
生成n个随机数:begin randomize;\/\/随机数初始化,不然的话每次生成的随机数都会是一样的 for i:=1 to n do a[i]:=random(x);\/\/random生成的是0~1之间的实数(不包括1),random(x)则是整数,x决定了范围,没记错的话相当于random*n吧。。。如果要上下界的话需要口算一下了 end.大...

pascal 随机函数如何定义
使用randomize过程打开随机数开关,再用random(n)函数生成0到n-1的随机整数。也可以使用random函数生成0到1的随机实数。

pascal程序怎样随机产生一个三位数? 并解释为什么要这样编写? 谢谢_百...
program ex;var x:integer;begin randomize; {先执行randomize, 才能得到随机整数} x:=random(900)+100; {random(n)产生0~n-1的随机数} writeln(x); { random(900)是0-899的随机数,再加上100就是100-999的随机数} end....

random(n)产生0~n的随机数(n为word类型,先执行randomize, 才能得到...
是这样的,计算机中所有的随机数都是通过某些方法计算出来的,也就是所谓的伪随机数。random(n)就是通过对种子数进行一系列的复杂运算得到随机数。如果不先执行randomize,那么pascal就会使用默认的种子数来生成随机数。在这种情况下,每一次运行程序生成的随机数都是一样的,也就是说,我第一次运行得到...

pascal中,random(41)是什么意思
产生 0-40之间的随机数 pascal里的随机数 随机数是指理论上没有规律可循、在指定范围内每个数的出现几率相等、无法根据之前的数来预测下一个数的数列。一般随机数生成器的基本原理是:首先初始化一个随机种子,其初始值可以是任意的整数;在每次获取随机数时,以随机种子为基础进行某种特殊的运算,获得...

[pascal]产生1-40之间不重复的随机数
integer;begin i:=0;repeat k:=random(41); s:=0;if k<>0 then begin if i<>0 then begin for j:=1 to i do if a[j]<>k then inc(s);end;if s=i then begin inc(i); a[i]:=k; end;end;until i=40;end.此过程结束后既产生了40个随机不重复的数存放在数组a中。

pascal 让电脑产生10个随机数,算出它们的平均数,从小到大排列
首先 可以用random函数生成10个随机数,再全部加起来,除以个数就是平均数了。从小到大排列可以用冒泡排序的方法。Var a:array[1..10]of Integer;i,j:Integer;Begin Randomize; {在使用random函数前先打乱} For i:=1 to 10 do Begin a[i]:=Random(100)+1; {生成一个1至101间的随机数}...

相似回答