Lesson 03: Operators – Toán Tử

🎯 Mục Tiêu

  • Hiểu các loại operators trong Python
  • Sử dụng arithmetic operators
  • Comparison và logical operators
  • Assignment và membership operators

Arithmetic Operators (Toán Tử Số Học)

a = 10
b = 3

print(a + b)   # 13 - Cộng
print(a - b)   # 7  - Trừ
print(a * b)   # 30 - Nhân
print(a / b)   # 3.333... - Chia (float)
print(a // b)  # 3  - Chia lấy phần nguyên
print(a % b)   # 1  - Chia lấy dư (modulo)
print(a ** b)  # 1000 - Lũy thừa (10^3)

Comparison Operators (Toán Tử So Sánh)

x = 5
y = 10

print(x == y)  # False - Bằng
print(x != y)  # True  - Khác
print(x > y)   # False - Lớn hơn
print(x < y)   # True  - Nhỏ hơn
print(x >= 5)  # True  - Lớn hơn hoặc bằng
print(x <= 10) # True  - Nhỏ hơn hoặc bằng

Logical Operators (Toán Tử Logic)

a = True
b = False

print(a and b)  # False - Cả 2 phải True
print(a or b)   # True  - Ít nhất 1 True
print(not a)    # False - Đảo ngược

Assignment Operators (Toán Tử Gán)

x = 5        # Gán
x += 3       # x = x + 3  -> 8
x -= 2       # x = x - 2  -> 6
x *= 4       # x = x * 4  -> 24
x /= 3       # x = x / 3  -> 8.0
x //= 2      # x = x // 2 -> 4
x %= 3       # x = x % 3  -> 1
x **= 2      # x = x ** 2 -> 1

Membership Operators

fruits = ["apple", "banana", "cherry"]

print("apple" in fruits)      # True
print("mango" not in fruits)  # True

name = "Python"
print("P" in name)            # True

Identity Operators

a = [1, 2, 3]
b = [1, 2, 3]
c = a

print(a is c)      # True  - Cùng object
print(a is b)      # False - Khác object (dù giá trị giống)
print(a == b)      # True  - Giá trị giống nhau
print(a is not b)  # True

Operator Precedence (Thứ Tự Ưu Tiên)

# Thứ tự từ cao đến thấp:
# 1. ** (lũy thừa)
# 2. *, /, //, % (nhân, chia)
# 3. +, - (cộng, trừ)
# 4. <, <=, >, >=, ==, != (so sánh)
# 5. not, and, or (logic)

result = 2 + 3 * 4      # 14 (không phải 20)
result = (2 + 3) * 4    # 20 (dùng ngoặc)

💡 Key Takeaways

  • / luôn trả về float, // trả về int
  • % hữu ích để kiểm tra số chẵn/lẻ
  • ** cho lũy thừa (không phải ^)
  • == so sánh giá trị, is so sánh object
  • Dùng ngoặc () để điều khiển precedence

➡️ Bài Tiếp Theo Lesson 04 – Strings

✍️ Bài tập thực hành

Bài 1: Basic Arithmetic. Cho: a = 15, b = 4. Tính và in ra: tổng, hiệu, tích, thương, chia nguyên, chia dư
Bài 2: Kiểm Tra Số Chẵn. Cho: number = 42. Kiểm tra và in ra số chẵn hay lẻ (dùng modulo)

One thought on “Lesson 03: Operators – Toán Tử

  1. cuongthongminh says:

    BÀI 1: Basic Arithmetic

    
    a = 15
    b = 4
    print(f"Tổng: {a} + {b} = {a + b}")
    print(f"Hiệu: {a} - {b} = {a - b}")
    print(f"Tích: {a} * {b} = {a * b}")
    print(f"Thương: {a} / {b} = {a / b}")
    print(f"Chia nguyên: {a} // {b} = {a // b}")
    print(f"Chia dư: {a} % {b} = {a % b}")
    

    #BÀI 2: Kiểm Tra Số Chẵn”)

    
    number = 42
    if number % 2 == 0:
        print(f"{number} là số chẵn")
    else:
        print(f"{number} là số lẻ")
    

    #BÀI 3: Tính Lũy Thừa

    
    result = 2 ** 10
    print(f"2^10 = {result}")
    
    
    #BÀI 4: So Sánh 2 Số
    x = 100
    y = 200
    
    if x > y:
        print(f"{x} lớn hơn {y}")
    elif x < y:
        print(f"{x} nhỏ hơn {y}")
    else:
        print("Bằng nhau")
    
    
    #BÀI 5: Logical AND
    print("=" * 60)
    temperature = 25
    is_sunny = True
    
    if temperature > 20 and is_sunny:
        print("Đi biển!")
    else:
        print("Ở nhà")
    
    #BÀI 6: Logical OR
    day = "Saturday"
    
    if day == "Saturday" or day == "Sunday":
        print("Cuối tuần")
    else:
        print("Ngày thường")
    
    #BÀI 7: Assignment Operators
    x = 100
    print(f"Bắt đầu: x = {x}")
    
    x += 50
    print(f"Sau x += 50: x = {x}")
    
    x -= 20
    print(f"Sau x -= 20: x = {x}")
    
    x *= 2
    print(f"Sau x *= 2: x = {x}")
    
    x //= 10
    print(f"Sau x //= 10: x = {x}")
    
    #BÀI 8: Membership Test
    shopping_list = ["sữa", "bánh", "trứng"]
    
    if "sữa" in shopping_list:
        print("✅ Có sữa trong list")
    
    if "thịt" not in shopping_list:
        print("❌ Không có thịt trong list")
    
    #BÀI 9: Range Check
    score = 75
    
    if 60 <= score <= 80:
        print(f"Điểm {score} nằm trong khoảng 60-80")
    else:
        print(f"Điểm {score} nằm ngoài khoảng")
    
    #BÀI 10: Precedence Challenge
    result = 5 + 3 * 2 ** 2 - 1
    
    print("Biểu thức: 5 + 3 * 2 ** 2 - 1")
    print("Thứ tự tính:")
    print("  1. 2 ** 2 = 4")
    print("  2. 3 * 4 = 12")
    print("  3. 5 + 12 = 17")
    print("  4. 17 - 1 = 16")
    print(f"Kết quả: {result}")
    

Leave a Reply

Your email address will not be published. Required fields are marked *