Site Loader
快樂學會Python中控制結構(11)-計算機實作
快樂學會Python中控制結構(11)-計算機實作

Python的控制結構有許多小技巧,今日就是要教你何謂計算機實作哦!

本文是 Python 項目實做:一個簡單的計算器。本實作應用了 Python 的基本函數與概念:while 迴圈if 條件判斷式elif 寫法type conversion類型轉換
每個部分說明了 Python 程式的不同部分。
第一部分是計算機的起始畫面,最主要是讓用戶一直不斷輸入,直到用戶輸入「exit」為止,因此使用了while 迴圈

while True:
   print("選項:")
   print("輸入 '+' 讓兩個數值互加")
   print("輸入 '-' 讓兩個數值互減")
   print("輸入 '*' 讓兩個數值互乘")
   print("輸入 '/' 讓兩個數值互除")
   print("輸入 'exit' 來結束程式")
   user_input = input(": ")

   if user_input == "exit":
      break
   elif user_input == "+":
      ...
   elif user_input == "-":
      ...
   elif user_input == "*":
      ...
   elif user_input == "/":
      ...
   else:
      print("不知道你在輸入什麼")

上述程式還沒寫完,只完成了起始畫面與結構。接下來我們針對每個小部分來寫 Python 程式碼:
加法的部分:

elif user_input == "+":
    num1 = float(input("請輸入數字:"))
    num2 = float(input("請輸入另一個數字:"))

Python教學中,當用戶輸入「+」後,程式就會提示輸入兩個數字。以上我們使用 float()函數,來將用戶輸入的數字強制轉變成浮點數。但是若用戶輸入的不是數字,程式就會 GG。
接下來,我們寫的程式碼,最主要是用來執行用戶輸入的兩個數字,完成加總並且將結果輸出。Python 程式碼如以下所示:

elif user_input == "+":
    num1 = float(input("請輸入數字:"))
    num2 = float(input("請輸入另一個數字:"))
    result = str(num1 + num2)
    print("答案是 " + result)

以此類推,減法的部分為:

elif user_input == "-":
    num1 = float(input("請輸入數字:"))
    num2 = float(input("請輸入另一個數字:"))
    result = str(num1 - num2)
    print("答案是 " + result)

以此類推,乘法的部分為:

elif user_input == "*":
    num1 = float(input("請輸入數字:"))
    num2 = float(input("請輸入另一個數字:"))
    result = str(num1 * num2)
    print("答案是 " + result)

以此類推,除法的部分為:

elif user_input == "/":
    num1 = float(input("請輸入數字:"))
    num2 = float(input("請輸入另一個數字:"))
    result = str(num1 / num2)
    print("答案是 " + result)

程式寫好,執行成果如下:

 

 

 

 

 

 

 

 

 

 

 

 

 

推薦閱讀
Python控制結構1.布林值Boolean-True or False?

Python控制結構2.if else條件判斷(1)
Python控制結構2.if else條件判斷(2)
Python控制結構3.布林邏輯:and,or,not
Python控制結構4.運算子優先順序(Operator precedence)一覽
Python控制結構5.while 迴圈
Python控制結構7.List串列與其他運算子的應用
Python控制結構8.List-append,insert,index,len函數
Python控制結構9.Range數列生成
Python控制結構10.for迴圈
Python控制結構11.實作簡單的計算機

 

 

 

 

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *