第四題
請撰寫一程式,讓使用者輸入數字,輸入的動作直到輸入值為9999才結束,然後找出其最小值,並輸出最小值。
主要就是 先設定一個無窮迴圈,把輸入的數值放進陣列List 中,直到9999就跳出無窮迴圈
程式如下
value=list() while True : val=int(input("請輸入一個正整數 (9999 結束輸入) :")) if val==9999 : value.append(val) break else: value.append(val) print (len(value)," 個數值中,最小值是 ",min(value))
輸出結果
請輸入一個正整數 (9999 結束輸入) :29 請輸入一個正整數 (9999 結束輸入) :100 請輸入一個正整數 (9999 結束輸入) :948 請輸入一個正整數 (9999 結束輸入) :377 請輸入一個正整數 (9999 結束輸入) :-28 請輸入一個正整數 (9999 結束輸入) :0 請輸入一個正整數 (9999 結束輸入) :-388 請輸入一個正整數 (9999 結束輸入) :9999 8 個數值中,最小值是 -388
第五題
請撰寫一程式,將使用者輸入的兩個數字作為參數傳遞給一個名為compute(x, y)的函式,此函式將回傳x和y的乘積。
這題就不需解釋了,直接看程式
def compute(x,y): z=x*y return z vala=int(input("請輸入一個正整數 :")) valb=int(input("請輸入一個正整數 :")) Value=compute(vala,valb) print(Value)
輸出結果
請輸入一個正整數 :56 請輸入一個正整數 :11 616
第六題
請撰寫一程式,讓使用者輸入52張牌中的5張,計算並輸出其總和。提示:J、Q、K以及A分別代表11、12、13以及1。
1. 可以將牌的點數先存放在陣列 List 中
2. 判別 A , J , Q , K
3. 把輸入的點數轉成數字,存放在另一個陣列
程式如下
輸出結果
2. 判別 A , J , Q , K
3. 把輸入的點數轉成數字,存放在另一個陣列
程式如下
pok=("2","3","4","5","6","7","8","9","10","A","J","Q","K","a","j","q","k") poksum=list() i=0 while True: Str="請輸入第" + str(i+1) +"張牌 :" pok_val=input(Str) if (pok_val in pok): if pok_val=="A" or pok_val=="a": poksum.append(1) elif pok_val=="J" or pok_val=="j": poksum.append(11) elif pok_val=="Q" or pok_val=="q": poksum.append(12) elif pok_val=="k" or pok_val=="K": poksum.append(13) else: poksum.append(int(pok_val)) i=i+1 if i == 5 : break print (len(poksum) , "張牌的點數總和是 : " , sum(poksum))
輸出結果
請輸入第1張牌 :5 請輸入第2張牌 :10 請輸入第3張牌 :k 請輸入第4張牌 :3 請輸入第5張牌 :a 5 張牌的點數總和是 : 32
沒有留言:
張貼留言