# Python TQC 601~610 ## 601 偶數索引值加總 ### 說明: 請撰寫一程式,利用一維串列存放使用者輸入的12個正整數(範圍1~99)。顯示這些數字,接著將串列索引為偶數的數字相加並輸出結果。 > 輸出每一個數字欄寬設定為3,每3個一列,靠右對齊。 ### 輸入/輸出 範例輸入: ![](https://i.imgur.com/34kkRqw.png) 範例輸出: ![](https://i.imgur.com/fWqYVfg.png) ### Code: ```python= list1 = [] size=12 for i in range(1,size+1): list1.append(eval(input())) total=0 for i in range(1,size+1): if i%3==0: print('%3d'%(list1[i-1])) else: print('%3d'%list1[i-1],end='') if (i-1)%2==0: total+=list1[i-1] print(total) ``` ## 602 撲克牌總和 ### 說明: 請撰寫一程式,讓使用者輸入52張牌中的5張,計算並輸出其總和。 > J、Q、K以及A分別代表11、12、13以及1。 ### 輸入/輸出 範例輸入: ![](https://i.imgur.com/ptS3tdF.png) 範例輸出: ![](https://i.imgur.com/yrD7yT4.png) ### Code: ```python= size=5 ans=0 card=[] for i in range(size): card.append(input()) if card[i] == 'a' or card[i] == 'A': ans+=1 elif card[i] == 'j' or card[i] =='J': ans+=11 elif card[i] == 'q' or card[i]=='Q': ans+=12 elif card[i] == 'k' or card[i]=='K': ans+=13 elif card[i] == '10': ans+=10 else: ans += eval(card[i]) print(ans) ``` ## 603 數字排序 ### 說明: 請撰寫一程式,要求使用者輸入十個數字並存放在串列中。接著由大到小的順序顯示最大的3個數字。。 ### 輸入/輸出 範例輸入: ![](https://i.imgur.com/5vU97XJ.png) 範例輸出: ![](https://i.imgur.com/ocuHZh7.png) ### Code: ```python= SIZE = 10 num = [] for i in range(SIZE): num.append(eval(input())) num.sort() print('%d %d %d'%(num[-1],num[-2],num[-3])) ``` ## 604 眾數 ### 說明: 請撰寫一程式,讓使用者輸入十個整數作為樣本數,輸出眾數(樣本中出現最多次的數字)及其出現的次數 > 需import math模組,並使用math.pi。 > 假設樣本中只有一個眾數 ### 輸入/輸出 範例輸入: ![](https://i.imgur.com/Vk9ZDqp.png) 範例輸出: ![](https://i.imgur.com/FhSQ3aH.png) ### Code: ```python= size=10 num = [] count = [0]*size for i in range(size): temp = eval(input()) num.append(temp) count[num.index(temp)] += 1 maxcount = max(count) print(num[count.index(maxcount)]) print(maxcount) ``` ## 605 成績計算 ### 說明: 請撰寫一程式,讓使用者輸入十個成績,接下來將十個成績中最小和最大值(最小、最大值不重複)以外的成績作加總及平均,並輸出結果。 > 輸出浮點數到小數點後第二位。 ### 輸入/輸出 範例輸入: ![](https://i.imgur.com/H0q9OXv.png) 範例輸出: ![](https://i.imgur.com/JkgIzZu.png) ### Code: ```python= size = 10 score = [] for i in range(size): score.append(eval(input())) ans=sum(score)-max(score)-min(score) print('%d'%ans) print('%.2f'%(ans/8)) ``` ## 606 二維串列行列數 ### 說明: 請撰寫一程式,讓使用者輸入兩個正整數rows、cols,分別表示二維串列lst 的「第一個維度大小」與「第二個維度大小」。串列元素[row][col]所儲存的數字,其規則為:row、col 的交點值 = 第二個維度的索引col – 第一個維度的索引row。接著以該串列作為參數呼叫函式compute()輸出串列。 > 欄寬為4。 ### 輸入/輸出 範例輸入: ![](https://i.imgur.com/kLKAJyC.png) 範例輸出: ![](https://i.imgur.com/xC8oexU.png) ### Code: ```python= def compute(rows,cols): for i in range(rows): list1.append([]) for j in range(cols): list1[i].append(j-i) print('%4d'%list1[i][j],end='') print() list1=[] rows = eval(input()) cols = eval(input()) compute(rows,cols) ``` ## 607 成績計算 ### 說明: 請撰寫一程式,讓使用者輸入三位學生各五筆成績,接著再計算並輸出每位學生的總分及平均分數。 > 平均分數輸出到小數點後第二位。 ### 輸入/輸出 範例輸入: ![](https://i.imgur.com/57n3KOs.png) 範例輸出: ![](https://i.imgur.com/hsQlCbp.png) ### Code: ```python= data = [] for i in range(3): print('The %d student:'%(i+1)) data.append([]) for j in range(5): data[i].append(eval(input())) for i in range(3): print('Student %d:'%(i+1)) print('Sum %d'%(sum(data[i]))) print('Average %.2f'%(sum(data[i])/len(data[i]))) ``` ## 608 最大最小值索引 ### 說明: 請撰寫一程式,讓使用者建立一個3*3的矩陣,其內容為從鍵盤輸入的整數(不重複),接著輸出矩陣最大值與最小值的索引 ### 輸入/輸出 範例輸入: ![](https://i.imgur.com/NTfjTcO.png) 範例輸出: ![](https://i.imgur.com/oaz83FC.png) ### Code: ```python= list1 = [] for i in range(3): list1.append([]) for j in range(3): list1[i].append(eval(input())) max_index = min_index = [0,0] maxn = minn = list1[0][0] for i in range(len(list1)): for j in range(len(list1[i])): if minn > list1[i][j]: minn = list1[i][j] min_index=[i,j] elif maxn < list1[i][j]: maxn = list1[i][j] max_index=[i,j] print('Index of Max number',maxn,'is:',max_index) print('Index of min number',minn,'is:',min_index) ``` ## 609 矩陣相加 ### 說明: 請撰寫一程式,讓使用者建立兩個2*2的矩陣,其內容為從鍵盤輸入的整數,接著輸出這兩個矩陣的內容以及它們相加的結果。 ### 輸入/輸出 範例輸入: ![](https://i.imgur.com/YHYDgZl.png) 範例輸出: ![](https://i.imgur.com/m4sDNND.png) ### Code: ```python= user1 = [] user2 = [] print('Enter user 1:') for i in range(2): user1.append([]) for j in range(2): user1[i].append(eval(input())) print('Enter user 2:') for i in range(2): user2.append([]) for j in range(2): user2[i].append(eval(input())) print('Matrix1:') for i in range(2): for j in range(2): print(user1[i][j],end=' ') print() print('Matrix2:') for i in range(2): for j in range(2): print(user2[i][j],end=' ') print() print('Sum of 2 Matrix:') for i in range(2): for j in range(2): print(user2[i][j]+user1[i][j],end=' ') print() ``` ## 610 平均溫度 ### 說明: 請撰寫一程式,讓使用者輸入四週各三天的溫度,接著計算並輸出這四週的平均溫度及最高、最低溫度。 > 輸出浮點數到小數點後第二位 ### 輸入/輸出 範例輸入: ![](https://i.imgur.com/tIIZOwk.png) 範例輸出: ![](https://i.imgur.com/xmUtHxN.png) ### Code: ```python= weektemp=[] for i in range(4): weektemp.append([]) print('Week ',i+1,':') for j in range(3): print('Day',j+1,end=':') weektemp[i].append(eval(input())) sum_temp = [] for i in range(4): sum_temp.extend(weektemp[i]) print('Average %.2f'%(sum(sum_temp)/12)) print('Height %.2f'%(max(sum_temp))) print('Lowest %.2f'%(min(sum_temp))) ``` --- 相關文章: [Python TQC 701~710](https://hackmd.io/@Neroal/B12UcS3vU) ###### tags: `python`