2010年7月3日 星期六

Excel-擲骰子遊戲

在Excel中來試試計算擲四顆骰子遊戲的點數,其規則必須要兩顆相同點數,再計算另外兩顆的和。

先試著計算每個點數有幾個骰子重覆(不包含自己,可能另有1,2,3個相同點數)。

儲存格B8:=COUNTIF($B$2:$E$2,B2)-1

複製儲存格B8到複製儲存格B8:E8。

接著檢驗儲存格B8是否大於0(如果為0表示該點數沒有重覆出現)。

儲存格B9:=IF(B8=1,TRUE,FALSE)

複製儲存格B8到複製儲存格B9:E9。

現在試著將儲存格B8:E9中的數字加總後除以2,儲存格C11:=SUM(B8:E8)/2。

可能的狀況分述如下:

狀況 說明 計算結果
case 0 4個數字完全不相同 0/2=0
case 1 2個相同數字,2個不同數字 2/2=1
case 2 2組相同數字 4/2=2
case 3 3個相同數字,1個不同數字 6/2=3
case 6 4個數字完全相同 12/2=6

 

(1) case 0:4個數字完全不相同

例:1,2,3,4;1,3,5,6。

儲存格C14:=0

以0計。

 

(2) case 1:2個相同數字,2個不同數字

例:1,2,5,5;2,4,5,2。

儲存格C15:=SUMPRODUCT(NOT(B9:E9)*B2:E2)

取未重覆者之點數相加。

 

(3) case 2:2組相同數字

例:2,2,4,4;1,1,6,6。

儲存格C16:=MAX(B2:E2)*2

取4個骰子點數的最大值乘以2。

 

(4) case 3:3個相同數字,1個不同數字

例:1,1,1,4;5,5,5,6。

儲存格C17:=0

以0計。

 

(5) case 6:4個數字完全相同

例:4,4,4,4;1,1,1,1。

儲存格C18:=SUM(B2:E2)/2

 

取4個骰子點數總和除以2。

儲存格C4:=CHOOSE(C11+1,C14,C15,C16,C17,0,0,C18)

利用CHOOSE函數,取C11的運算結果(C11+1是因為CHOOSE函數不接受0),找出對應的結果(CHOOSE函數找不到5,6項,所以補0)。

若儲存格B2:E2,以亂數(=INT(RAND()*6+1))產生,則只要按下F9,即可自動計算出一個值。

沒有留言:

張貼留言

檢視其他文章

好康東東