屎運大熱鬥!(實戰篇)

今天大樂透開獎,頭獎上看八億!昨天HB就說,要不要來買個一注來看看。我嘲笑他說:「你這隻屎熊,想中獎喔?!門!」,HB不甘心,反唇相譏:「是誰最近在日記裡PO一堆,自己很衰的文章?還敢說別人塞!」,我想想了一下,不如來利用一下這隻屎熊,說「不然你快去買,我避開你的號碼!」HB:「好啊!不過萬一我們都帶屎,那麼剩下的號碼不就便宜了別人嗎!」「嗯,有理!那就來包牌吧!一共49碼!八注右一碼 49(大家都很塞號!),我們來分,看誰中的碼少,就知道誰帶塞了!」HB:「即然要來測運氣,就不能有人為因素,大家來抽號碼!」,想想也對,我說「那麼我來寫一支程式,可以亂序一萬次,大家再來分,中午去投注,晚上就知道誰是屎王了!」。連同Lucas, HB,還有DrJ,在加上來檢魚翁之利的Fen,展開了一場屎運大熱鬥!你覺得誰是我們實驗室的屎王呢? (使用IE 可以參加投票)


很久,也應該要面對了!原來投票結果是對的,屎運王果然就是我......
你可以看到,開出來的號碼(紅字)均勻的分布在除了我以外的所有人!嗚嗚......

##ReadMore##


屎運大對決!VBA VBA程式碼
一隻Excel VBA小程式,會任選兩格,交換數字,並重複一萬次!





Sub RandLatto()
Dim R1, R2, C1, C2, i, j, k, l, n As Integer
Dim add As String
add = Selection.Address(ReferenceStyle:=xlR1C1)
add = Replace(add, "R", "")
add = Replace(add, "C", ":")
s = Split(add, ":")
R1 = s(0)
R2 = s(2) - R1 + 1
C1 = s(1)
C2 = s(3) - C1 + 1

For n = 1 To 10000
Randomize
i = R1 + Int(Rnd() * R2)
j = C1 + Int(Rnd() * C2)
k = R1 + Int(Rnd() * R2)
l = C1 + Int(Rnd() * C2)
sw = ActiveSheet.Cells(i, j).Value
ActiveSheet.Cells(i, j).Interior.Color = RGB(255, 0, 0)
ActiveSheet.Cells(k, l).Interior.Color = RGB(0, 255, 0)
ActiveSheet.Cells(i, j).Value = ActiveSheet.Cells(k, l).Value
ActiveSheet.Cells(k, l).Value = sw
ActiveSheet.Cells(i, j).Interior.Color = RGB(255, 255, 255)
ActiveSheet.Cells(k, l).Interior.Color = RGB(255, 255, 255)

Next n

End Sub

留言