[問題] 亂數...可以解釋一下嗎?
產生1~42不重複的亂數..模擬樂透開獎情形..
int [] num = num int[8];
Random rnd = new Random();
int getdata;
bool reapeatdata;
int tot = 1
do
{
getdata = rnd.Next(1,43); //取得1~42亂數
repeatdata = false; //先假設不重複
for(int i = 1;i<=tot;i++) //這邊不懂,為何 i<=tot
{
if(getdata==num[i]) // 因為i=1,所以會跑回圈,進入到if(getdata==num[i])
{ 所以getdata(26 亂數產生) = num[1]..是這樣解釋嗎?
reapeatdata = true;
break;
}
}
if(reapeatdata == false //因為i從1開始,i++,i從2進入回圈..但i<=tot
{ 不符合條件,所以跳出回圈執行這一行...
num[tot] = getdata; 因為reapeatdata == false(一開始預設的)
tot++; num[1] = getdata(26)
} tot = 2
while(tot<8) // 因為tot = 2 符合while 再開始回圈
對於上面兩個if敘述小弟很模糊.....
小弟想問num[0]在哪個點會出現?
或是可以把小地解釋不隊的地方改一下...
小弟非常想釐清觀念..謝謝....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.70.143.144
推
07/25 01:45, , 1F
07/25 01:45, 1F
→
07/25 01:47, , 2F
07/25 01:47, 2F
C_Sharp 近期熱門文章
PTT數位生活區 即時熱門文章