python實作21根火柴游戲
今天用python實作一個21根火柴游戲,規則是 :有21根火柴,人和計算機輪流拿,人先拿(輸入拿幾根)計算機后拿,每次至少1根最多4根,拿到最后一根火柴的算輸,要確保計算機一定可以獲勝!
仔細思考或者找規律后,你會發現要保證機器不拿到最后一根,每次機器拿了火柴后一定要保證剩余的火柴是這幾個數16、11、6、1,這樣就一定使得最后一根火柴留給人拿,進一步發現要使得剩下的火柴數是以上幾個數,那么就要每輪機器和人拿走的火柴數加起來等于5根,知道這個規律后,就可以用python來實作了
代碼如下:
total = 21 # 用于統計火柴根數
while total > 0:
try:
n = int(input(f"請輸入你要拿的根數"))
person = '人'
if 0 < n < 5: #保證人拿的火柴根數
total -= n
print(f"人拿了{n}根,還剩{total}根")
if total == 1 :
print(f"{person}贏了")
computer = 5 - n
total -= computer
compters = '機器'
print(f"機器拿了{computer}根,還剩{total}根")
if total == 1 :
print(f"{compters}贏了")
else:
print("輸入的值大于4或者小于1,請重新輸入")
except Exception as err:
print("輸入的值不是數字,請重新輸入")
大家學廢了嗎?趕緊自己試試
如果對你有用,別忘記點贊關注加收藏哦!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/291126.html
標籤:其他
