BCB 亂數每次執行跑的值都要不一樣? |
答題得分者是:nlj859
|
wolfmiller
一般會員 發表:1 回覆:1 積分:0 註冊:2004-12-20 發送簡訊給我 |
產生亂數的函數
AnsiString Rand16()
{
randomize();
int index=rand();
AnsiString array[16]={0,1,2,3,4,5,6,7,8,9,'A','B','C','D','E','F'};
return array[index];
} //----------------------------------
Edit1->Text=Rand16() Rand16() Rand16(); 出來的值會是BBB,333,888,呼叫三次函數出來的亂數值都一樣
可是我想要的是B38...469...039 每次呼叫函數出來的值都不一樣
而且我希望下次再執行這程式的時候出來的值,
不再等於上次的亂數(B38,469,039)...也就是可能出現D75,C29,5A2,...等再次新的亂數 我是BCB的新手..
請問各位大大要怎麼寫?謝謝
|
nlj859
資深會員 發表:139 回覆:375 積分:322 註冊:2004-03-20 發送簡訊給我 |
Hello wolfmiller, 把randomize()放到FormCreate()
void __fastcall TForm1::FormCreate(TObject *Sender) { randomize(); Edit1->Text=rand16() rand16() rand16(); } AnsiString TForm1::rand16(void) { int a; AnsiString v[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}; a=random(16); return v[a]; }發表人 - nlj859 於 2005/01/09 15:44:09 |
wolfmiller
一般會員 發表:1 回覆:1 積分:0 註冊:2004-12-20 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |