Try   HackMD

終極密碼遊戲

遊戲說明

由電腦做莊,從1~100之間隨機產生一個數字,次數字即為「密碼」,參加遊戲的多個玩家輪流猜這個密碼。。每猜一個數,電腦會告知遊戲者該數字是大於或小於密碼,並更新最新的範圍,直至到密碼被猜中。

例如:

  • 終極密碼為45
  • A玩家猜77,範圍變1~77
  • B玩家猜24,範圍變24~77
  • C玩家猜35,範圍變35~77
  • A玩家猜90,電腦會提示其實錯誤的數字,因為不在範圍內
  • B玩家猜52,範圍變35~52
  • C玩家猜42,範圍變42~52
  • A玩家猜46,範圍變42~46
  • B玩家猜45,則B玩家獲勝。

完整程式碼

import random

# 產生密碼(範圍1~100之間的自然數)
passcode = random.randint(1, 100)
print(f'答案為:{passcode}')

# 建立存放範圍最新範圍的變數
min = 1     # 存放比答案小的範圍
max = 100   # 存放比答案大的範圍

# 玩家開始猜
while True:
    guess = int(input(f'請猜密碼, 範圍為{min}~{max}之間的數字:'))

    # 判斷猜測的數字有沒有在範圍內
    if guess > max or guess < min:
        print('Ooops, 這數字有問題,請重新輸入。')

    # 猜對離開遊戲
    elif guess == passcode:
        print('猜對了,遊戲結束。')
        
        # 跳離迴圈
        break

    # 數字比答案大,則更新max變數
    elif guess > passcode:
        print('數字過大,請猜小一點')
        max = guess

    # 數字比答案小,則更新min變數
    else:
        print('數字過小,請猜大一點')
        min = guess