pascal語言random每次產生的數字可以不一樣嗎

2025-07-28 23:16:24 字數 3468 閱讀 7770

1樓:網友

可以,在random前用乙個randomize,這樣就可以了。randomize的作用是產生隨機種子,可以讓每次隨機的數不一樣。

比如:randomize;

random(a);

random(b);

就行了。謝謝。

2樓:網友

打個randomize,這個在程式裡用一次就夠了,不用打多次,但要在random前面打。

pascal的random不random

3樓:

randomize 要加在主程式最前面,寫到迴圈中是沒用的!

就是因為不要在每個random前都寫,只要主程式最前面寫乙個。

4樓:網友

你沒有隨機初始化!!

在程式第一行加上randomize;

5樓:網友

加上隨機種子:

程式第一行寫出上:

randomize;

pascal語言中想隨機產生10個(50,100)的數該怎麼用random函式

6樓:﹠楓シ飄蔆

用for語句執行下面。

50+random(50);

前面再加randomize

用隨機函式random產生100到1000的隨機數,用pascal語言,語句怎麼寫?

7樓:網友

random(1000-100)+100

由於random產生的是0~上限 的整數,所以把範圍先往下移100,得到結果後再向上移100(加100)。

8樓:

writeln( 100 + random(901) )

糾正一下,random(x)生成的是屬於[0~x-1]的整數的隨機數,另外randomize是初始化隨機因子,一般與時間有關,及randomize,會讓隨機因子變為只與時間有關係的數,所以不要在很接近的時間裡使用randomize,否則會出錯,即讓多個隨機數完全相同。

9樓:網友

去你麻壁的,想咋寫咋寫。

pascal random 怎麼用

10樓:整容兄

下面是示範啊。

var i,n:longint;

beginrandomize;

n:=random(100);

for i:=1 to n do writeln(random(100));

end.解釋:randomize是保證每次的random值都不一樣。

如果不加這一句,你可以試一下,輸出的n個數都一樣。

random(n)表示產生乙個小於n但是大於等於0的數。

11樓:網友

randomize ->必須有的語句,才能真正的隨機得數。

random(n) -生成[0,n)的數。

12樓:o_v浮雲

ransom是乙個函式,不能單獨使用,用法:變數名:=random(引數)

例如 a:=random(100)

當無引數時,0<a≤0

當有引數時,0<a≤引數值。

隨機產生a-b範圍的數的程式段:

randomize;

x:=trunc(random(b-a+1))+a;

關於randomize

這是乙個隨機種子,避免多次隨機時都產生一樣地數。

一般在程式開頭輸入,乙個程式只需輸入一次。

pascal中的random問題

13樓:便秘靈

random:使用隨機種子(存在系統內部)產生隨機數randomize:重新產生隨機種子(存在系統內部)呼叫random之前必須先呼叫沒有引數的randomize,即begin

randomize;

writeln(random(100));

end.random範圍公式:

random(上界+1);產生0~上界。

random(上界)+1;產生1~上界。

random(上界);產生0~上界-1

random(上界)+下界;產生下界~上界+下界random(上界-下界)+下界;產生下界~上界。

14樓:

random(x)是隨機函式,產生0到x-1隨即整數randomize是隨機數初始化過程。

在一些舊版pascal編譯器中必須在random函式使用之前執行randomize

所以一般在程式開頭就寫好。

否則在執行randomize之前的程式段中每次使用random產生的函式值就會是相同的。

不過在一些版本較新的編譯器中不使用randomize也沒關係。

pascal中random怎麼編出來的

15樓:陸風

random

是隨機函式,是這樣用的:random(變數,不超過多少的數值)

16樓:網友

根據當前系統時間進行一系列複雜計算,使隨機度較高。

pascal random 使用

17樓:叮噹貓武漢

random函式定義是這樣的:

function random [ range: integer) ]

即整數引數range是可選項,可有可無。沒有引數時產生的隨機數x滿足:0<=x<1; 有引數時產生的隨機數x滿足:0<=x所以 0<=random*900<900, 而 0<=random(900)<900

可以看出:random(900)與random(900)效果是一樣的!

不過我喜歡用random(900),感覺更隨機一些,只是感覺而已!

別忘了在程式formcreate里加randomize;

18樓:網友

random是0~1之間的小數。

trunc(random*900)就是0~899+100就可以保證是三位數100~999

random(900)也對的。

19樓:網友

random:隨機產生乙個[0,1)之間的小數(不能取到1)random(x):隨機產生乙個0~x-1之間的整數random(900)表示0~899之間的數,所以random(900)+100就是100~999

而random是[0,1),則random*900就是[0,900),所以trunc(random*900)的範圍是0~899,所以trunc(random*900)+100 的範圍就是100~999

故兩種都可以!!

20樓:網友

random諾後面不加括號,其值為0~~1之間的數,包括小數。

pascal語言的程式

第一題,很簡單,我就不說了。varg,s,b,k longint begin k 0 for b 1 to 9 do for s 0 to 9 do for g 0 to 9 do if b s and s g and g b and s b g and not s b in 2,3,5,7,11,...

c語言中random函式怎麼用

random函式 math.random 可以產生出0 1之間的任意小數,例如0.0105901374530933 或0.872525005541986,有幾個其他的函式可以用來改變產生的數字,從而可以更好的在影片中使用 math.round math.ceil math.floor 這幾個函式都是...

Pascal語言 分數交叉加減運算

哪怕我是大牛我也要告訴你,缺那麼多,加你那看不懂得廢話,鴨梨很大啊 vara,b,n1,n2,x,y,z,c,f,h,m1,m2,m,n,mt,nt,r,t longint begin f 2 begin while f 3 do begin writeln 1.分數加法 2.分數減法 3.退出程式...