一、在程序中預設一個0-9之間的整數,讓用戶通過鍵盤輸入所猜的數,如果大於預設的數,顯示“遺憾,太大了”;小於預設的數,顯示“遺憾,太小了”。如此循環,直至猜中該數,顯示“預測了N次,你猜中了! ”,其中N是用戶輸入數字的次數。不使用異常處理。
題目分析:
(1)首先確定一個整數N,然后根據提示用戶輸入一個數:input()函數實現
(2)利用N與input()函數的值進行比較,只要不相等,就分情況討論:
(3)如果輸入的值不等於預設的值,執行while下面的整個循環體內容。否則直接輸出print()語句。
二、統計不同字符個數。用戶從鍵盤輸入一行字符,編寫一個程序,統計並輸出其中英文字符、數字、空格和其他字符的個數。
題目分析:
(1)統計字符個數,其實就是計數的一個過程。
(2)對不同類型計數,就需要分類型討論,數字屬於0-9,字母屬於a-z,A-Z,空格屬於“ ”,
(3)對輸入的字符串進行一個一個字母分解,相當於對字符串進行遍歷,for c in s格式,(讀取字符串中的每一個字符)
針對最后輸出的格式,也可以進行整合:
三、讓計算機在程序中隨機產生一個0-100之間的整數,讓用戶通過鍵盤輸入所猜的數,如果大於預設的數,顯示“遺憾,太大了”;小於預設的數,顯示“遺憾,太小了”。如此循環,直至猜中該數,顯示“預測了N次,你猜中了! ”,其中N是用戶輸入數字的次數。不使用異常處理。
程序分析:
(1)首先利用隨機庫函數,隨機產生一個整數N=random.randint(0,100),然后根據提示用戶輸入一個數:input()函數實現
(2)利用N與input()函數的值進行比較,只要不相等,就分情況討論:
(3)如果輸入的值不等於預設的值,執行while下面的整個循環體內容。否則直接輸出print()語句。
import random #引入隨機庫
N=random.randint(0,100) #產生一個0-100的隨機整數
a=eval(input("請輸入一個整數:")) #對輸入的數字進行類型轉換
k=1
while a!=N:
if a>N: #注意if與while的縮進關系
print("遺憾,太大了") #注意print與if的縮進關系
elif a<N:
print("遺憾,太小了")
else:
break
a=eval(input("請輸入一個整數:"))
k+=1
print("預測{}次,你猜中了!".format(k))
四、從鍵盤接收兩個整數,編寫程序求出這兩個整數的最大公約數和最小公倍數(提示:求最大公約數可用輾轉相除法,求最小公倍數則用兩個數的積除以最大公約數即可)
程序分析:
(1)最大公約數可用輾轉相除法,求最小公倍數則用兩個數的積除以最大公約數