Python期中考試程序設計詳解-3


一、在程序中預設一個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)最大公約數可用輾轉相除法,求最小公倍數則用兩個數的積除以最大公約數

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM