iT邦幫忙

2022 iThome 鐵人賽

DAY 28
0
自我挑戰組

《雜學》 ︳MISCELLANEOUS LEARNING系列 第 28

〈踐例.中秋博餅〉︳BO BING

  • 分享至 

  • xImage
  •  

          古有《月令》仲秋養衰老,授几杖,行糜粥。後有八月十五作節中秋也。夫前人之中秋,賞月、團員、喫月餅、食柚子,後人至今亦行斯,乃中秋之民俗也。今諸地亦有各各慶中秋之民俗,譬如閩東諸地有燒塔、閩南諸地有博餅。夫燒塔者,磚瓦建塔,而後焚之,以表除舊布新,圓圓滿滿之意也。博餅者,博月餅,洪旭初作之,以釋愁緒,振士氣也。而今,燒塔乃閩東人之中秋民俗也。博餅乃閩南人之玩物也,尚有一詩《賭月餅》曰「六子齊投任變翻,街頭巷尾笑言喧。科名久已遭人唾,猶集群兒搶狀元。」博者唯圖一樂也。

          夫博餅,博科名也,科名乃得月餅,夫科名,乃狀元、榜眼、探花、進士、舉人、秀才也。餅數六十三,乃郡王之數也。夫博法,簡也,擲六骰以博科名,科名以得餅也。六骰有一為四者,乃秀才,其數三十二人,六骰有二為四者,乃舉人,其數十六人,六骰有四相同者,乃進士,其數八人,注曰:「六骰有四為四者則非進士。」,六骰有三為四者,乃探花,其數四人,六骰皆不同者,乃榜眼,其數二人。凡六十二人,悉數分之,後博狀元,凡六骰有四為四者或六骰有五相同者得,唯一人也,得者勝。若六骰盡相同者,亦勝也。

          今從簡作之,六骰有一為四者,乃秀才,六骰有二為四者,乃舉人,六骰有四相同者,乃進士,六骰有三為四者,乃探花,六骰皆不同者,乃榜眼,六骰有四為四者或六骰有五相同者,乃狀元也,六骰盡相同者亦狀元。六骰者,以列表也,骰子,以渾沌經之畛取整數骰也。畛取整數者,random.randint()也,唯取畛域之一整數也。譬如六面骰,乃一至六,曰random.randint(1, 6),取其中之一數也。別科名以術法,術法內以決策,乃出科名也。程式書如是:

import random
玩者 = [random.randint(1, 6),random.randint(1, 6),random.randint(1, 6),random.randint(1, 6),random.randint(1, 6),random.randint(1, 6)]
機器 = [random.randint(1, 6),random.randint(1, 6),random.randint(1, 6),random.randint(1, 6),random.randint(1, 6),random.randint(1, 6)]

def 別科名(骰者):
    一者 = 0
    二者 = 0
    三者 = 0
    四者 = 0
    五者 = 0
    六者 = 0
    for x in 骰者:
        match x:
            case 1:
                一者+=1
            case 2:
                二者+=1
            case 3:
                三者+=1
            case 4:
                四者+=1
            case 5:
                五者+=1
            case 6:
                六者+=1
    骰數列 = [一者, 二者, 三者, 四者, 五者, 六者]
    if 一者>=5 or 二者>=5 or 三者>=5 or 五者>=5 or 六者 >=5 or 四者 >= 4:
        return '狀元'
    if 骰數列 == [1, 1, 1, 1, 1, 1]:
        return '榜眼'
    if 四者 == 3:
        return '探花'
    if 一者|二者|三者|五者|六者 ==4:
        return '進士'
    if 四者 == 2:
        return '舉人'
    if 四者 == 1:
        return '秀才'
    else:
        return '不中'

print('玩者所骰', end='')
for x in 玩者:
    print(f'{x} ', end='')
print('也')
print('機器所骰', end='')
for x in 機器:
    print(f'{x} ', end='')
print('也')

print(f'玩者{別科名(玩者)}也,機器{別科名(機器)}也。')

          試之,玩者骰五、四、四、五、五、五,有四數相同,乃得進士也。機器骰五、六、二、三、三、五,皆無符合,乃不中也。

玩者所骰5 4 4 5 5 5 也
機器所骰5 6 2 3 3 5 也
玩者進士也,機器不中也。

上一篇
〈踐例.剪刀石頭布〉︳ROCK PAPER SCISSORS
下一篇
〈千字文〉︳THOUSAND CHARACTER CLASSIC
系列文
《雜學》 ︳MISCELLANEOUS LEARNING30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言