→ Ihope:多謝各位~~ 推 218.166.72.228 04/02
: : : 這個其實比較簡單
: : : X=Int((Rnd*11))+1
: : : 我想問的重點是如何強制X成為3的倍數....
: : X = 3
: : 6
: : 9 機率各1/3啊。
: : 不然就醬醬。
: : do{
: : RndNum = GenRnd() ;
: : } while (RndNum % 3 != 0) ;
: Do Until RndNum Mod 3 = 0
: RndNum = Int(Rnd * 11) + 1
: Loop
:
: --
我想到一個簡單一點的
因為你要1~11之間 所以 只有3 6 9 各除以3 只剩 1 2 3
所以 只要產生一到三的亂數即可
X=(Int((Rnd*3))+1)*3
--
╭─────╮╭─────┐╭───┐╭┐┌─────┐╭─────╮
∣ ╭┐∣∣ ╭┐∣∣ ∣∣∣╰┐ ┌╯∣ ╭╯
∣ ∣∣∣∣ ││∣∣ └╯∣ ∣ ∣ ∣ └╮
∣ └╯∣∣ └╯∣∣ ∣ ∣ ∣ ╰┐ ∣
∣ ╭─╯∣ ┌┐∣╰┐ ╭╯╭┘ └╮╭╯ ∣
└───╯─╯└───╯└╯ ╰───╯ꈠ└─────┘╰─────╯
--
※ 發信站: 批踢踢實業坊(ptt.csie.ntu.edu.tw)
◆ From: 61.221.30.57