Slogan của bài học: “Nếu-Thì-Ngược lại: Ba từ khiến chương trình của bạn thông minh hơn!”
Hôm nay chúng ta sẽ học về CẤU TRÚC RẼ NHÁNH – khái niệm giúp chương trình của chúng ta “biết suy nghĩ” và đưa ra quyết định thông minh!
[Mời ôn lại Bài 2 – NHẬP->_XỬ LÝ->XUẤT]
MỤC TIÊU BÀI HỌC
- Hiểu được ý nghĩa của cấu trúc rẽ nhánh trong lập trình
- Sử dụng thành thạo khối
nếu...thìvànếu...thì...ngược lại - Áp dụng vào các tình huống thực tế: kiểm tra điểm số, phân loại đối tượng
KHÁI NIỆM: THẾ NÀO LÀ “RẼ NHÁNH”?
Hãy tưởng tượng mỗi buổi sáng thức dậy, các em có các lựa chọn:
- NẾU trời mưa → THÌ mặc áo mưa
- NGƯỢC LẠI (trời nắng) → THÌ đội mũ
Đó chính là rẽ nhánh! Chương trình sẽ kiểm tra điều kiện và chọn một trong các hướng đi khác nhau.
THỰC HÀNH 1: KIỂM TRA ĐIỀU KIỆN ĐƠN GIẢN
Mục tiêu: Tạo chương trình kiểm tra điểm thi
Các bước thực hiện:
1. Tạo biến và nhập liệu:
when green flag clicked
ask [Nhập điểm số của bạn:] and wait
set [DiemSo v] to (answer)
2. Sử dụng cấu trúc IF (nếu-thì):
if <(DiemSo) > [5]> then
say [Chúc mừng! Bạn đã qua môn!] for [3] seconds
end
3. Chương trình hoàn chỉnh:
when green flag clicked
ask [Nhập điểm số của bạn:] and wait
set [DiemSo v] to (answer)
if <(DiemSo) > [5]> then
say [Chúc mừng! Bạn đã qua môn!] for [3] seconds
end
THỰC HÀNH 2: SỬ DỤNG IF-ELSE (NẾU-THÌ-NGƯỢC LẠI)
Mục tiêu: Phân loại học lực dựa trên điểm số
Chương trình phân loại học lực:
when green flag clicked
ask [Nhập điểm số (0-10):] and wait
set [DiemSo v] to (answer)
if <(DiemSo) >= [8]> then
say [Giỏi! Bạn thật xuất sắc!] for [3] seconds
else
if <(DiemSo) >= [6.5]> then
say [Khá! Cố gắng hơn nữa nhé!] for [3] seconds
else
if <(DiemSo) >= [5]> then
say [Trung bình! Cần nỗ lực nhiều hơn!] for [3] seconds
else
say [Yếu! Hãy học lại để tiến bộ!] for [3] seconds
end
end
end
CÁC TOÁN TỬ SO SÁNH QUAN TRỌNG
Trong nhóm Operators (màu xanh lá), các em cần nhớ:
>: Lớn hơn<: Nhỏ hơn=: Bằng nhau>=: Lớn hơn hoặc bằng<=: Nhỏ hơn hoặc bằng<>: Khác nhau
THỰC HÀNH 3: ỨNG DỤNG THỰC TẾ – MÁY TÍNH THÔNG MINH
Mục tiêu: Tạo máy tính kiểm tra số chẵn/lẻ
when green flag clicked
ask [Nhập một số bất kỳ:] and wait
set [SoNhap v] to (answer)
if <((SoNhap) mod (2)) = [0]> then
say (join [Số ] (join (SoNhap) [ là số CHẴN])) for [3] seconds
else
say (join [Số ] (join (SoNhap) [ là số LẺ])) for [3] seconds
end
BÀI TẬP THỰC HÀNH
Bài tập cơ bản:
Tạo chương trình kiểm tra tuổi để xem có đủ điều kiện đi thi bằng lái xe không (đủ 18 tuổi)
Bài tập nâng cao:
Tạo chương trình giải phương trình bậc 1: ax + b = 0
- Nếu a = 0 và b = 0 → Phương trình vô số nghiệm
- Nếu a = 0 và b ≠ 0 → Phương trình vô nghiệm
- Nếu a ≠ 0 → Phương trình có nghiệm x = -b/a
MẸO LẬP TRÌNH HỮU ÍCH
- Luôn kiểm tra điều kiện biên: Ví dụ: điểm số phải từ 0-10
- Sử dụng phép MOD để kiểm tra tính chẵn lẻ
- Kết hợp nhiều điều kiện bằng khối
và,hoặc - Thụt lề code để dễ theo dõi các khối lệnh lồng nhau
KẾT LUẬN
Hôm nay chúng ta đã học được cách “dạy” cho chương trình biết suy nghĩ thông qua cấu trúc rẽ nhánh. Đây là bước tiến quan trọng từ việc tạo chương trình chạy tuần tự sang chương trình thông minh, có khả năng đưa ra quyết định.
“Lập trình không chỉ là ra lệnh, mà là dạy máy tính cách tự đưa ra quyết định thông minh dựa trên các điều kiện cụ thể.”
Ở bài tiếp theo, chúng ta sẽ học về VÒNG LẶP – công cụ giúp tự động hóa các công việc lặp đi lặp lại, tiết kiệm thời gian và công sức!
Hãy thực hành thật nhiều và nhớ: mỗi lần gặp lỗi là một lần các em đang tiến gần hơn đến thành công!
The Coding Monkey!
