Re: [ASP ] 想寫個像樂透的程式但是遇到了瓶頸
來個提示好了
假設要取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
推
03/31 02:12, , 1F
03/31 02:12, 1F
→
03/31 02:13, , 2F
03/31 02:13, 2F
討論串 (同標題文章)
完整討論串 (本文為第 3 之 5 篇):