作者slanla (slanla)
看板Visual_Basic
標題Re: [ASP ] 想寫個像樂透的程式但是遇到了瓶頸
時間Sun Mar 30 13:35:51 2008
來個提示好了
假設要取1~5 3個不重複的數字
1.首先設一陣列大小為5內容為1,2,3,4,5
2.設一計數器值為5,表示還有5個球沒拿
3.取一亂數0~5,假設為1
4.交換位置4與1,並將計數器設為4,表示還有4個球沒拿
此時陣列內容為1,5,3,4,
2
5.取一亂數0~4,假設為1
6.交換位置3與1,並將計數器設為3,表示還有3個球沒拿
此時陣列內容為1,4,3,
5,2
7.取一亂數0~3,假設為0
8.交換位置2與0,並將計數器設為2,表示還有2個球沒拿
此時陣列內容為3,4,
1,5,2
9.完成(因為已經取出3個球了)
這方法不用擔心rnd()會取到重複~~因為只是取得到位置.而非值
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.127.25.128
推 xtimer:對這個方法還滿有興趣的 可是...還沒教到計數器= = 03/31 02:12
→ xtimer:想看 但是不會寫~"~ 03/31 02:13