猜數字遊戲
前面幾章學的東西,這裡第一次真的組在一起做一個小遊戲:電腦隨機想一個數字,你來猜,它會提示你太大還是太小,直到你猜中。
會用到這幾樣:
random.randint():讓電腦隨機選一個答案。while迴圈:只要還沒猜對,就一直讓你猜。if/elif:比對你的猜測和答案,給出提示。input()和int():讀進你輸入的數字。
按「執行」,程式會隨機選一個 1 到 100 的答案。在輸入框打一個數字送出,它會告訴你太大或太小;照著提示調整,直到猜中為止:
import random
answer = random.randint(1, 100)guess = 0
while guess != answer: guess = int(input("猜一個 1 到 100 的數字:"))
if guess < answer: print("太小了") elif guess > answer: print("太大了")
print("答對了!答案就是", answer)因為答案是隨機的,每次按「重新執行」都會換一個新的答案。同一場遊戲裡繼續猜,答案不會變。
answer = random.randint(1, 100) 先讓電腦在 1 到 100 之間挑一個數,存進 answer。
while guess != answer: 的意思是「只要猜的和答案不一樣,就繼續」。一開始 guess 設成 0,一定不等於答案,所以至少會問一次。
迴圈裡先讀進這次的猜測,再用 if / elif 比大小給提示。等到某次 guess 剛好等於 answer,while 的條件不再成立,迴圈結束,跳到最後印出「答對了」。
自己動手改改看
Section titled “自己動手改改看”試著把程式改成這樣,練習一下:
- 記錄總共猜了幾次,最後一起印出來。
- 限制最多只能猜 7 次,超過就公布答案。
- 把範圍從 1 到 100 改成 1 到 1000。