編程題
猜數字遊戲,規則如下:由系統自動給一個隨機數字(1-10之間,不包括10),您根據提示輸入您所猜的數字,若您猜的數字和系統所給的數字一樣,則按以下規則所提示執行:
若您在2次之內就可以猜出數字,程序會顯示「您太棒了!!!」
若在4次之內猜出數字,程序會顯示「恭喜您,猜對了!」
若在6之內猜出數字,程序會顯示「終於猜出來了!";
若您超過6次還未猜出,程序會顯示「你太笨了,遊戲結束
輸出形式如下(只能輸入整數型的數字):
思路分析
通過隨機數函數產生一個1-10範圍內的正整數。隨機數的用法,可參考Python3中的random() 隨機數函數通過for循環語句控制猜的次數,不超過6次,超過6次遊戲結束。檢查輸入數據的有效性,通過while...else循環語句處理。每次猜數字過程,經歷第1步檢查數據有效性,然後判斷數據大小。用if..else語句判斷猜數字的次數,按要求輸出提示語。編程實現
#!/usr/bin/env python # -*- coding: utf-8 -*-# @Author : 青松# @Time : 2020/3/12 # @Site : www.itclub16.comimport random#系統產生一個1-10之間的隨機數,不包含10randomNum = random.randint(1,9)print("----------------猜數字遊戲開始----------------")guessNum = int(input("請輸入您猜的數字(1-10之間):"))#for n in range(1,6): #第1步:每次比較前檢查輸入的數字的有效性 while guessNum<1 or guessNum>9: #直到輸入的數據有效才進入比較環節,否則一直循環輸入 guessNum = int(input("您輸入的數字不符合要求,請重新輸入(1-10之間):")) else: #第2步:比較數字大小 if guessNum>randomNum: guessNum = int(input("您輸入的數字太大,請重新輸入(1-10之間):")) elif guessNum<randomNum: guessNum = int(input("您輸入的數字太小,請重新輸入(1-10之間):")) else:#當猜對時,按猜的次數輸出提示語 if n<=2: print("您太棒了!!!") elif n<=4: print("恭喜您,猜對了!") else: print("終於猜出來了!") breakelse: #當猜的次數超過6次時,提示遊戲結束 print("你太笨了,遊戲結束")print("----------------猜數字遊戲結束----------------")運行結果: