blog.dopana

Back

Chào mừng em quay trở lại, lập trình viên nhí! 🚀

Chú robot Python của chúng ta hiện đã có trí nhớ (biến), nhưng chú vẫn chỉ đang làm theo mệnh lệnh của chúng ta một cách mù quáng. Hôm nay, chúng ta sẽ dạy chú cách suy nghĩ và tự đưa ra quyết định!

Trong trò chơi điện tử, nếu nhân vật chạm vào dung nham, họ sẽ thua cuộc. Nếu họ chạm vào chiếc cúp vàng, họ sẽ chiến thắng. Làm thế nào máy tính biết được phải làm gì? Câu trả lời là chú sử dụng Ngã rẽ Quyết định If/Else!

Ngã Rẽ Trong Khu Rừng#

Hãy tượng chú robot đang đi dạo trong một khu rừng phép thuật và gặp một ngã rẽ. Tại đây có một tấm biển ghi câu hỏi: “Em có ít nhất 10 đồng tiền vàng không?”

graph TD
    Start([Robot bước vào]) --> Decision{Số tiền >= 10?}
    Decision -->|Có - Đúng| PathA["Mua Kiếm Thần! ⚔️"]
    Decision -->|Không - Sai| PathB["Tiếp tục thám hiểm... 🗺️"]

Trong Python, chúng ta viết ngã rẽ quyết định này bằng lệnh if (nếu) và else (ngược lại):

coins = 12

if coins >= 10:
    print("Mua Kiếm Thần! ⚔️")
else:
    print("Tiếp tục thám hiểm khu rừng... 🗺️")
python

Cách Viết Lệnh Quyết Định Trong Python#

Có 3 quy tắc vàng cần nhớ khi hướng dẫn robot đưa ra quyết định:

  1. Câu Hỏi: Chúng ta hỏi bằng các ký hiệu so sánh (như >= nghĩa là lớn hơn hoặc bằng).
  2. Dấu Hai Chấm :: Luôn đặt dấu hai chấm ở cuối dòng câu hỏi. Nó giống như việc báo cho robot biết: “Lối đi bắt đầu từ đây!”
  3. Lùi Đầu Dòng (4 Khoảng Trắng): Thêm khoảng trống ở đầu các dòng mã bên trong mỗi lối đi bằng cách nhấn phím Cách (Spacebar) 4 lần (hoặc nhấn phím Tab). Điều này giúp Python hiểu lệnh nào thuộc về lối đi nào!

Các Ký Hiệu So Sánh (Câu hỏi của Robot)#

Khi đặt câu hỏi, robot sẽ sử dụng các ký hiệu so sánh sau:

  • > (Lớn hơn)
  • < (Nhỏ hơn)
  • == (Bằng nhau? Lưu ý: Chúng ta dùng HAI dấu bằng để đặt câu hỏi so sánh, và MỘT dấu bằng để gán giá trị vào hộp!)
  • != (Không bằng/Khác?)
  • >= (Lớn hơn hoặc bằng)
  • <= (Nhỏ hơn hoặc bằng)

Nếu Có Nhiều Hơn Hai Lối Đi Thì Sao? (elif)#

Nếu chúng ta có lựa chọn thứ ba thì sao? Ví dụ:

  • Nếu có từ 10 xu trở lên: Mua kiếm thần.
  • Nếu có từ 5 xu trở lên: Mua khiên gỗ.
  • Còn lại: Tiếp tục thám hiểm.

Chúng ta sử dụng lệnh elif (viết tắt của “else if” - nếu không thì) để thêm các tấm biển chỉ đường:

coins = 6

if coins >= 10:
    print("Mua Kiếm Thần! ⚔️")
elif coins >= 5:
    print("Mua Khiên Gỗ! 🛡️")
else:
    print("Tiếp tục thám hiểm... 🗺️")
python

Vì số tiền coins6, robot kiểm tra lối đi thứ nhất (Sai), kiểm tra tiếp lối đi thứ hai (Đúng!) và thông báo: "Mua Khiên Gỗ! 🛡️".

Tự Mình Trải Nghiệm! 🎮#

Em có thể viết một đoạn mã để kiểm tra điểm số trò chơi không?

  1. Tạo biến score và đặt giá trị là 120.
  2. Nếu điểm số lớn hơn 100, hãy in ra "Kỷ lục mới! 🏆".
  3. Ngược lại, hãy in ra "Làm tốt lắm! Chơi lại nhé! 🎮".

Hãy thử đổi điểm số thành 80 và xem chú robot sẽ nói gì nhé!

Trong bài tiếp theo, chúng ta sẽ học cách làm cho robot thực hiện các hành động lặp đi lặp lại nhiều lần mà không bao giờ mệt mỏi. Hẹn gặp lại em!

Tài liệu tham khảo#