[問題] 樂透號碼的產生

看板C_and_CPP (C/C++)作者 (小瓜)時間16年前 (2009/11/18 23:35), 編輯推噓0(002)
留言2則, 2人參與, 最新討論串1/1
請問各位 我希望寫一個程式能跑出樂透開獎的7個號碼(不重覆) coding如下: int _tmain(int argc, _TCHAR* argv[]) { int occupy[42] = {0}; int count = 0; while( count < 7 ) { int ltm = lotto_number(); if( occupy[ltm-1] == 0 ) { occupy[ltm-1] = 1; cout << ltm << endl; count++; } } system("pause"); return 0; } int lotto_number() { srand ( time(NULL) ); int num = rand() % 42; return num + 1; } 它雖然可以產生七個不重覆的數字 但那些數字的出現總是由小排到大 並且每個間隔幾乎一定是3或4 這樣似乎不隨機@@? 不曉得哪裡出了問題? 懇請各位不吝解答<(_ _)> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.5.44

11/18 23:36, , 1F
srand ( time(NULL) ); 移到 main 呼叫一次就好
11/18 23:36, 1F

11/18 23:38, , 2F
喔喔喔!!謝謝你:D
11/18 23:38, 2F
文章代碼(AID): #1B11Gx_o (C_and_CPP)
文章代碼(AID): #1B11Gx_o (C_and_CPP)