--- title: Python 實作3 tags: exercise --- Python程式課程 === ## 【迴圈】實作 ### 計算正整數總和 讓使用者輸入一個正整數,計算從1到該整數的總和。 ```python= sum = 0 n = int(input("請輸入正整數: ")) for i in range(1,n+1): sum += i print(f"1 到{n} 的總和為 {sum}") ``` :::info 課堂練習 :mega: 讓使用者輸入一個正整數,計算從1到該整數的偶數總和。 Hint: 偶數為整除2的數字(可以利用 % 模除的概念) ::: ### 九九乘法表 ```python= for i in range(1,10): for j in range(1,10): x = i*j print(f"{i}*{j} = {x:-2d}", end = " ") print() ``` ### 樓層命名 因為樓層命名會跳過四樓,所以如果是總共5層的話,會是12356層樓 ```python= n = int(input("請輸入大樓的樓層數: ")) print("本大樓具有的樓層為: ") if(n > 3): n += 1 for i in range(1, n+1): if(i == 4): continue print(i, end=" ") print() ``` :::info 課堂練習 :mega: 判斷質數,讓使用者輸入一個大於1的整數,判斷該數是否為質數。 Hint:可利用同餘(%)的概念 ::: ### 判斷質數(素數) 讓使用者輸入一個大於1的整數,判斷該數是否為質數。 ```python= n = int(input("請輸入大於1的整數: ")) if(n==2): print("2是質數") else: for i in range(2,n): if(n%i == 0): print(f"{n} 不是質數!") break else: print(f"{n} 是質數!") ``` ### 計算班級成績 假設有一位老師,需要輸入成績,輸入「-1」表示成績輸入結束,在輸入成績結束後顯示班上總成績及平均成績。 ```python= total = person = score = 0 while (score != -1): person += 1 total += score score = int(input(f"請輸入第 {person} 位學生的成績: ")) average = total/(person-1) print(f"班級總成績:{total} 分,平均成績: {average:5.2f} 分") ``` :::info 課堂練習 :mega: 設計一款賓果遊戲,玩家可先指定某一數字,然後清空畫面請下個人猜數字,如果數字太大,提示"數字小一點",如果數字太小,提示"數字大一點",最後猜對顯示"恭喜猜對!"。 Hint:如果希望清空終端機畫面,可直接在終端機輸入「clear」 或是可在程式碼加入下列程式碼: ::: ```python= import os os.system( 'cls' ) ``` :::danger 挑戰 :mega: 如果要讓賓果數字隨機產生,而非使用者輸入,應該如何做呢? ::: ### CRAPS賭博遊戲 CRAPS又稱花旗骰,是美國拉斯維加斯非常受歡迎的一種桌上賭博遊戲。該遊戲使用兩粒骰子,玩家通過搖兩粒骰子獲得點數進行遊戲。簡單的規則是:玩家第一次搖骰子如果搖出7點或11點,玩家勝;玩家第一次如果搖出2點、3點或12點,莊家勝;其他點數玩家繼續搖骰子,如果玩家搖出7點,則莊家勝,如果玩家搖出了第一次搖的點數,玩家勝,其他點數,玩家要繼續搖骰子,直到分出勝負。