HW02 運算子表達式
115103152
1.Notebook
2.影片
3.學習卡
4.測驗
5.範例
1. 算術運算子(Arithmetic Operators)
Python 提供基本的四則運算,並區分實數除法(/,得到浮點數結果)與整數除法(//,得到整數商),並支援取餘數(%)與次方運算(**,亦可用於開根號):
a = 5
b = 4
# 基本四則與除法運算
print(a + b) # 加法:9
print(a - b) # 減法:1
print(a * b) # 乘法:20
print(a / b) # 實數除法(得浮點數):1.25
print(a // b) # 整數除法(得整數商):1
print(a % b) # 取餘數:1
# 次方與開根號運算
print(a ** 2) # 次方(5的平方):25
print(9 ** (1/2)) # 開根號(9的1/2次方):3.0
print(27 ** (1/3)) # 開立方(27的1/3次方):3.0
2. 指派運算子與變數交換(Assignment Operators)
Python 支援複合指派運算子(如 +=, -=, *= 等),能將運算與賦值合併執行。此外,Python 具備多變數同時指派與交換功能,不需要第三方暫存變數即可完成兩數互換:
# 複合指派運算
s = 0
a = 3
b = 4
s += a # 等同於 s = s + a,s 變為 3
print(s)
s -= b # 等同於 s = s - b,s 變為 -1
print(s)
# 多變數同時指派與內容交換
x, y = 1, 2 # 同時指派
x, y = y, x # 同時交換 x 與 y 的內容
print(x, y) # 輸出結果:2 1
3. 關係與邏輯運算子(Relational & Logical Operators)
關係運算子用於大小比較並回傳布林值(True 或 False)。邏輯運算子直接使用單字 not、and、or。Python 亦支援直接撰寫如 1 < x <= 6 這類直觀的數學連鎖比較敘述:
x = 3
y = 4
# 關係比較運算
print(x == y) # 等於判斷:False
print(x != y) # 不等於判斷:True
print(x < y) # 小於判斷:True
# 邏輯運算(and、or、not)
print(x > 0 and y > 0) # 兩者皆成立:True
print(x < 0 or x == y) # 任一成立:False
print(not (x == y)) # 否定運算:True
# 連鎖比較運算(等同於 x > 1 and x <= 6)
print(1 < x <= 6) # 輸出:True
4. 運算式綜合實務應用
範例 A:計算長方形面積與周長
利用標準輸入 input() 取得使用者資料,透過 int() 轉換型態後進行算術運算:
# 輸入長與寬並轉為整數
a = int(input("input a:"))
b = int(input("input b:"))
# 計算面積與周長
c = a * b # 面積
d = 2 * (a + b) # 周長
print("面積=%d ,周長=%d" % (c, d))
範例 B:一元二次方程式公式解 (\(ax^2 + bx + c = 0\))
透過判別式運算子與次方根求得方程式的兩個實數解:
a = 1
b = 4
c = -5
# 計算判別式平方根 d = sqrt(b^2 - 4ac)
d = (b ** 2 - 4 * a * c) ** (1/2)
# 公式解求根
x1 = (-b + d) / (2 * a)
x2 = (-b - d) / (2 * a)
print("x1 =", x1) # 輸出:1.0
print("x2 =", x2) # 輸出:-5.0
範例 C:整數拆解(結合 // 與 %)
利用整數除法與餘數運算,將任意多位數的每個位數拆解出來(例如三位數阿姆斯壯數的位數拆解):
i = 153
# 分解百位數、十位數與個位數
digit_100 = i // 100 # 百位數
digit_10 = (i - digit_100 * 100) // 10 # 十位數
digit_1 = i % 10 # 個位數
print("百位:", digit_100, "十位:", digit_10, "個位:", digit_1)
💡 如果你想針對特定應用(例如迴圈結構、選擇結構 match...case 或字串拆解 split)深入練習,我可以為你整理專屬的演練題型與解答。
6.程式:
# 讀取使用者輸入的公斤數,並轉換為浮點數以支援小數輸入
try:
weight_kg = float(input('Enter the weight of object in kilogram (請輸入物體的公斤重量): '))
# 進行單位轉換計算
pounds = weight_kg * 2.20
tonnes = weight_kg * 0.001
# 輸出轉換結果(保留兩位小數)
print('\n--- Conversion Results (轉換結果) ---')
print(f' Weight = {weight_kg:.2f} Kilograms (公斤)')
print(f' {weight_kg:.2f} kg = {pounds:.2f} pounds (磅)')
print(f' {weight_kg:.2f} kg = {tonnes:.4f} Tonnes (公噸)')
except ValueError:
print('Error: Please enter a valid numerical value. (錯誤:請輸入有效的數字。)')
GitHub README.md 範本
您可以直接複製下方框中的 Markdown 內容,並將其命名為 README.md 上傳至您的 GitHub 專案中:
# Weight Converter (Kilograms to Pounds and Tonnes)
一個簡單易用的 Python 命令行程式,用於將物體的重量從**公斤 (Kilograms)** 轉換為**磅 (Pounds)** 與**公噸 (Tonnes)**。
## 📌 功能特點 (Features)
- 支援整數與小數輸入。
- 自動計算並精確輸出轉換結果。
- 包含基本的錯誤處理,防止使用者輸入非數字字元。
## 🧮 轉換公式 (Conversion Formula)
- $1 \text{ kg} = 2.20 \text{ pounds}$
- $1 \text{ kg} = 0.001 \text{ Tonne}$
## 🚀 執行環境 (Prerequisites)
- Python 3.x
## 💻 如何執行 (Usage)
1. 下載或複製 `weight_converter.py` 到您的電腦。
2. 開啟終端機 (Terminal) 或命令提示字元 (CMD)。
3. 執行以下指令:
```bash
python weight_converter.py
- 依據提示輸入重量(例如:
100),即可看到轉換結果。
📊 執行範例 (Example Output)
Enter the weight of object in kilogram: 100
--- Conversion Results ---
Weight = 100.00 Kilograms
100.00 kg = 220.00 pounds
100.00 kg = 0.1000 Tonnes
📄 授權條款 (License)
此專案採用 MIT 授權條款,詳情請參閱 LICENSE 檔案。 ```











留言
張貼留言