程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python每日一練——第3天:三種猜數字小游戲

編輯:Python

1. 問題描述

<font color=green size=4>需求描述:</font>
  • <font color=black size=4>隨機生成一個100以內的整數,共有10次機會開始游戲,輸入猜測的數字
  • <font color=black size=4>如果猜小了,提示猜小了
  • <font color=black size=4>如果猜大了,提示猜大了
  • <font color=black size=4>猜對了,提示猜對了,並且結束游戲
  • <font color=black size=4> 10次機會用完還沒猜對,提示游戲結束,沒有猜到。</br></br>
  • <font color=#0099ff size=4>小伙伴們看了問題描述後,一定要自己先練習,再去看博主的代碼和解題思路,才能提高自己的編程水平,全靠自覺喲!!!
  • <font color=red size=4>歡迎小伙伴們把自己的思路或答案在評論區留言,博主會選一個最優解答進行置頂。

2. 算法思路


<font color=black size=4>1. 使用random庫的randint函數生成一個100以內的隨機數。<br /><font color=black size=4>2. 使用 for 循環進行循環10次,每次提示輸入要猜測的數字,猜大或猜小都做下相應的提示,並輸出還剩下幾次機會。<br /><font color=black size=4>3. 當在10次機會內猜對數字,提示猜對了,你真棒,只用了幾次機會。<br /><font color=black size=4>4. 10次機會用完還沒猜對,提示游戲結束,猜不出來吧。

3. 代碼實現

方式1:限制只能猜十次

實現代碼:
&quot;&quot;&quot;
Python每日一練
猜數字小游戲
random庫 randint的使用方式
random.randint(a,b) 生成一個[a,b]之間的整數 (包含a、b)
&quot;&quot;&quot;

import random

# 隨機生成一個1-100之間的整數
number = random.randint(0, 100)
# 循環十次結束
for i in range(10):
 # input函數從鍵盤輸入要猜的數字,並轉換為int類型
 choice = int(input(&quot;請輸入你要猜測的數字:&quot;))
 # 大於目標數字
 if choice > number:
 print(&quot;你猜大了&quot;)
 # 小於目標數字
 elif choice < number:
 print(&quot;你猜小了&quot;)
 # 等於目標數字
 else:
 print(&quot;你猜對了,真棒!&quot;)
 print(f&quot;你一共用了{i + 1}次機會&quot;)
 break
 print(f&quot;還剩{9 - i}次機會&quot;)
else:
 print(&quot;游戲結束你還沒有猜到。&quot;)

運行結果:
我猜了十次才中運氣沒誰了

方式2:不限次數猜

實現代碼:
&quot;&quot;&quot;
Python每日一練
猜數字小游戲
random庫 randint的使用方式
random.randint(a,b) 生成一個[a,b]之間的整數 (包含a、b)
&quot;&quot;&quot;

import random

# 隨機生成一個1-100之間的整數
number = random.randint(0, 100)
# 統計所猜次數
count = 0
while True:
 # 每循環一次,count加1
 count += 1
 # input函數從鍵盤輸入要猜的數字,並轉換為int類型
 choice = int(input(&quot;請輸入你要猜測的數字:&quot;))
 # 大於目標數字
 if choice > number:
 print(&quot;你猜大了&quot;)
 # 小於目標數字
 elif choice < number:
 print(&quot;你猜小了&quot;)
 # 等於目標數字
 else:
 print(&quot;你猜對了,真棒!&quot;)
 print(f&quot;你一共用了{count}次機會&quot;)
 break

運行結果:

方式3:我們輸入答案電腦來猜

接下來我們對這個游戲進行一個小改動,由用戶輸入一個數字,讓電腦猜:
實現代碼:
&quot;&quot;&quot;
Python每日一練
猜數字小游戲
random庫 randint的使用方式
random.randint(a,b) 生成一個[a,b]之間的整數 (包含a、b)
&quot;&quot;&quot;

import random

# 輸入一個正確答案
answer = int(input('請輸入答案:'))
# start表示范圍開始值
start = 1
# end表示范圍結束值
end = 100
# count依然用於統計次數
count = 0
# 電腦程序所猜第一個值,我們先在循環外得到
guess = random.randrange(start, end)
# 每循環一次,改變范圍
while True:
 count += 1
 if guess > answer:
 print(f'電腦猜{guess},猜大了')
 end = guess
 guess = random.randrange(start, guess)
 elif guess < answer:
 print(f'電腦猜{guess},猜小了')
 start = guess + 1
 guess = random.randrange(start, end)
 else:
 print(f'正確答案:{answer},電腦猜:{guess}:電腦猜了:{count}次猜中了')
 break

運行結果:

4. 如何讓刷題變得更加高效呢?

<font color=black size=5>1. 編程小白選手</font></br><font color=black size=3>很多剛入門編程的小白學習了基礎語法,卻不知道語法的用途,不知道如何加深映像,不知道如何提升自己,這個時候<font color=red size=3>每天刷自主刷一道題就非常重要(百煉成神),可以去牛客網上的編程初學者入門訓練。</font>該專題為編程入門級別,適合剛學完語法的小白練習,題目涉及編程基礎語法,基本結構等,每道題帶有練習模式和考試模式,可還原考試模式進行模擬,也可通過練習模式進行練習。</font></br>鏈接地址:牛客網 | 編程初學者入門訓練<font color=black size=5>2. 編程進階選手</font></br><font color=black size=3>當基礎練習完已經逐步掌握了各知識要點後,這個時候去<font color=red size=3>專項練習中學習數據結構、算法基礎、計算機基礎</font>等。先從簡單的入手,感覺上來了再做中等難度,以及較難的題目。<font color=red size=3>這三樣是面試中必考的知識點</font>,我們只有堅持每日自己去多加練習,拒絕平躺持續刷題,不斷提升自己才能沖擊令人滿意的公司。</font></br>鏈接地址:牛客網 | 專項練習<font color=black size=3>速度上號,大家一起沖擊大廠,有疑問評論區留言解答!!!
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved