Re: [請益] 想請問一下一個抽獎程式的流程問題
我之前有做過一個解法,反正現在電腦記憶體都很大,提供你一下XD
(我知道一定很白癡,不過我不是讀科班的,然後這種case也不值多少錢,懶得想XD)
你就準備一個一維陣列,然後假設機率是10%、15%、20%等等(湊到100%)
就開一個寬度是100的,用for依序把1、2、3獎順序填入這個陣列
這個填入的程式只要用for寫就可以了,機率可以先定義在一個陣列裡,foreach
讀出來之後電腦自己去把牌組建立好
之後用shuffle打亂陣列(洗牌),再把第一個抽出來,就結束了XD
如果是小數怎麼辦,擴分XD
※ 引述《lionSYH (獅子王)》之銘言:
: 小弟最近在做一個抽獎程式
: 假設有4個獎項...
: 我想要控制
: 1獎機率為10%
: 2獎20%
: 3獎30%
: 4獎40%
: 我想到的方法比較蠢...
: 就是產生10個陣列...定為a
: 1獎放在a[0]
: 2獎a[1] a[2]
: 3獎a[3] a[4] a[5]
: 4獎a[6] a[7] a[8] a[9]
: 之後再rand(0,9) 看中的哪個..
: 不過在機率大時還可以在這樣用,
: 如果機率中有0.01 或是15.35這種非整數的機率出現時
: 我的陣列數就要產生相當多
: 不知道有沒有更好的方法,可以達成呢!?
: 麻煩各位前輩了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.36.32.29
推
05/01 00:03, , 1F
05/01 00:03, 1F
→
05/01 01:01, , 2F
05/01 01:01, 2F
→
05/01 01:01, , 3F
05/01 01:01, 3F
→
05/01 01:02, , 4F
05/01 01:02, 4F
→
05/01 01:02, , 5F
05/01 01:02, 5F
→
05/01 01:02, , 6F
05/01 01:02, 6F
→
05/01 01:02, , 7F
05/01 01:02, 7F
→
05/01 01:15, , 8F
05/01 01:15, 8F
推
05/01 12:33, , 9F
05/01 12:33, 9F
推
05/01 15:39, , 10F
05/01 15:39, 10F
推
05/01 19:57, , 11F
05/01 19:57, 11F
推
05/02 10:21, , 12F
05/02 10:21, 12F
→
05/02 10:21, , 13F
05/02 10:21, 13F
→
05/02 15:03, , 14F
05/02 15:03, 14F
推
05/02 19:09, , 15F
05/02 19:09, 15F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 4 之 5 篇):
PHP 近期熱門文章
PTT數位生活區 即時熱門文章