作者janewinnie (逃離)
看板Fortran
標題[問題] 20個人中隨機抽取10個人
時間Sat Apr 10 21:27:24 2010
我的問題是 如果我想在20個人中隨機抽取10人
要怎麼寫程式呢?
我有想到
do i=1,20,1
call random_number(ran)
if (ran <= 10/20 .and. count<20) then
item(i)=1 !表示被抽取
count=count+1
endif
end do
這樣是用機率的方式去抽,而且保證不會超過10位,
但我是要抽取”切確的10位”,機率的方式可能其實抽取不到10位。
請問還有更好的方法嗎?
相同的也可以套用在1000人中隨機抽取30位
或是10000人中隨機抽取350位
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.123.185.83
1F:→ mantour:先想如果只要抽一位你會怎麼抽 04/10 23:42
2F:→ mantour:抽十個人就是抽十次,每次抽完把抽過的移走或標記起來,下 04/10 23:44
3F:→ mantour:次從剩下的裡面再抽一個 04/10 23:44