Python練習題(持續更新中)


第一題

使用while循環實現輸出2 - 3 + 4 - 5 + 6 ... + 100 的和。

#方法一
#從2開始計算
i = 2
#定義一個變量用於保存結果
sum=0
while i <= 100:
    if i % 2 == 0:
        sum = sum + i
    else:
        sum = sum - i
    i += 1
print("2-3+4-5+6...+100=",sum)

#方法二
n=3
sum=2
while n<=100 :
    #n對2取余
    if n % 2 != 0:
        sum = sum - n
        n = n + 1
    else:
        sum = sum + n
        n = n + 1
print("2-3+4-5+6...+100=",sum)

 

第二題

從鍵盤獲取一個數字,然后計算它的階乘,例如輸入的是3,那么即計算3!的結果,並輸出。

提示:

1!等於 1

2!等於 1*2

3!等於 1*2*3

n!等於 1*2*3*...*n

n = int(input("請輸入一個非負的數字:")) # 負數不算階乘
def factorial(n):
    if n == 0:
        return 1  # 0的階乘是1
    else:
        return n * factorial(n - 1)

if __name__ == '__main__':
    result=factorial(n)
    print("{}的階乘為:{}".format(n,result))

 

第三題

用戶輸入考試成績,當分數高於90(包含90)時打印A;否則如果分數高於80(包含80)時打印B;否則如果當分數高於70(包含)時打印C;否則如果當分數高於60(包含60)時打印D;其他情況就打印E。

try:
    score=float(input('請輸入考試成績:'))
    if score>=90:
        print('A')
    elif 80<=score<90:
        print('B')
    elif 70<=score<80:
        print('C')
    elif 60<=score<70:
        print('D')
    else:
        print('E')
except Exception as e:
    print('您輸入有誤!')

 

第四題

假設一年的定期利率為3.52%,需要幾年才能讓定期存款連本帶息的翻一番(例如:需要多少年10000才能變成20000)?

save_money = float(input("請輸入你要存入銀行的錢:"))
print("你存了{}元到銀行".format(save_money))
total_money = save_money * 2 # 定義變量用於保存總錢數
year = 1 # 定義變量用於記錄年份
while save_money < total_money:
    save_money *= (1 + 0.0352)
    year += 1
print("定期利率為3.52%,需要{}年本金和利息才能翻一番!".format(year))

 

第五題

將列表a =["I","T","e","s","t","e","r"]拼接成字符串,請用多種方法實現。

# 方法一  字符串函數調用
a = ["I","T","e","s","t","e","r"]
print("".join(a))

#方法二 for循環
a = ["I","T","e","s","t","e","r"]
s = ""
for item in a:
    s += item
print(s)

 

 

注:文章首發於微信公眾平台【ITester軟件測試小棧】

 


免責聲明!

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



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