全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:3932
推到 Plurk!
推到 Facebook!

如何讓亂數不重複?

答題得分者是:cobraliu
tony_s70266
一般會員


發表:1
回覆:0
積分:0
註冊:2008-04-29

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-05-02 14:52:21 IP:140.128.xxx.xxx 訂閱
三個元件 Edit 、Memo1、Button1

procedure TForm1.Button1Click(Sender: TObject);
var
i,n:integer;
begin
n:=StrToInt(Edit1.Text);
Randomize();
i:= Random(n) 1;
memo1.Lines.Add(IntToStr(i));
end;

我想要做一個亂數產生器
可是它出現的值還是會再重複一次
聽說可以用陣列去記錄,如果取過的值他就不會在取了

只是...我不知道該怎麼做
希望有高手能夠指點一下 ,謝謝
-----------------------
版主大人對不起,真是不好意思
我記得我有打,可能是改到了吧!
已經把標題改了,感謝你的通知

----------------------

我大概已經知道了
謝謝各位的回答
編輯記錄
tony_s70266 重新編輯於 2008-05-02 14:52:53, 註解 無‧
tony_s70266 重新編輯於 2008-05-02 14:54:26, 註解 無‧
tony_s70266 重新編輯於 2008-05-02 14:56:27, 註解 無‧
tony_s70266 重新編輯於 2008-05-02 14:56:46, 註解 無‧
tony_s70266 重新編輯於 2008-05-02 16:48:08, 註解 無‧
tony_s70266 重新編輯於 2008-05-03 14:09:01, 註解 無‧
cobraliu
中階會員


發表:15
回覆:75
積分:83
註冊:2007-11-22

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-05-02 15:06:32 IP:220.143.xxx.xxx 訂閱
請參考
http://delphi.ktop.com.tw/board.php?cid=30&fid=1498&tid=91232

其實你可以Find就有答案了
------
初學、初學、學了很久...還是在初學階段..Orz
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-05-02 16:43:49 IP:61.67.xxx.xxx 未訂閱
1.請使用有意義的標題
http://delphi.ktop.com.tw/board.php?cid=32&fid=107&tid=20571

通常對沒有意義的標題, 我們是不會提供任何意見的, 謝謝!
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-05-03 09:52:02 IP:61.67.xxx.xxx 未訂閱
1.樓上網友已經有充分的提供答案來源了, 這邊不多述code
2.Random(n), 其中的 n 我們一般稱為 種子來源, 當來源一樣時, 所產生的亂數是同一組
所以, 我一般會用時間與日期做種子來源求亂數, 例如
DecodeDate(), DecodeTime()取出年月日時分秒值, 然後給它做一堆亂七八糟的 -*/
求出來的數值做為種子來源, 基本上要重覆的可能性非常低
你可以朝向這方面來設計, 多利用搜尋來找答案
===================引 用 tony_s70266 文 章===================
三個元件 Edit 、Memo1、Button1

procedure TForm1.Button1Click(Sender: TObject);
var
i,n:integer;
begin
n:=StrToInt(Edit1.Text);
Randomize();
i:= Random(n) 1;
memo1.Lines.Add(IntToStr(i));
end;
系統時間:2024-05-06 17:21:40
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!