一起來學Python控制結構:實作簡單的計算機

一起來學Python控制結構:實作簡單的計算機
一起來學Python控制結構:實作簡單的計算機

想學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("請輸入另一個數字:"))

現在,當用戶輸入「+」後,程式就會提示輸入兩個數字。以上我們使用 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教學相關文章嗎?快到部落格首頁找找吧!!

 

 

 

其他閱讀

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.實作簡單的計算機

 

發佈留言

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