🔀 Bài học: Cấu trúc rẽ nhánh (if / else)

Học cách ra quyết định trong C++ bằng điều kiện, ví dụ thực tế và demo tương tác.

🎯 1. Mục tiêu bài học
  • Hiểu điều kiện trong lập trình.
  • Biết dùng if / else.
  • Hiểu toán tử so sánh.
  • Biết viết chương trình ra quyết định.
  • Giải bài toán kiểm tra dữ liệu.
🌦️ 2. Vì sao cần cấu trúc điều kiện?

Trong cuộc sống, ta luôn đưa ra quyết định dựa trên điều kiện:

Nếu trời mưa → mang ô Nếu điểm ≥ 5 → đậu Nếu tuổi < 18 → chưa đủ tuổi

Trong lập trình cũng vậy: kiểm tra điều kiện để quyết định chương trình làm gì.

🧱 3. Cấu trúc if trong C++
if (điều kiện) {
    // lệnh khi điều kiện đúng
}
int age;
cin >> age;

if (age >= 18) {
    cout << "Du tuoi";
}
↔️ 4. Cấu trúc if - else
if (điều kiện) {
    // khi đúng
}
else {
    // khi sai
}
int score;
cin >> score;

if (score >= 5)
    cout << "Dau";
else
    cout << "Rot";
🧮 5. Toán tử so sánh
Toán tửÝ nghĩa
==bằng
!=khác
>lớn hơn
<nhỏ hơn
>=lớn hơn hoặc bằng
<=nhỏ hơn hoặc bằng
if (a > b)
🧩 6. Ví dụ: kiểm tra số chẵn
int n;
cin >> n;

if (n % 2 == 0)
    cout << "So chan";
else
    cout << "So le";
🪜 7. Demo step-by-step điều kiện
Input: 8 Step 1: n = 8 Step 2: n % 2 = 0 Step 3: 0 == 0 → TRUE Step 4: in "So chan"
🏫 8. Ví dụ thực tế

Kiểm tra tuổi

int age;
cin >> age;

if (age >= 18)
    cout << "Du tuoi";
else
    cout << "Chua du tuoi";

So sánh hai số

int a,b;
cin >> a >> b;

if (a > b)
    cout << a;
else
    cout << b;
🔁 9. else-if chain
int x;
cin >> x;

if (x > 0)
    cout << "Duong";
else if (x < 0)
    cout << "Am";
else
    cout << "Bang 0";
🌳 10. Minh họa logic điều kiện (Decision tree)
Điều kiện ↓ n % 2 == 0 ? / \ TRUE FALSE ↓ ↓ So chan So le
🎮 Demo 1 — Decision Tree
Bấm nút để kiểm tra: score >= 5 ?
🎮 Demo 2 — Even/Odd Visualizer
Nhấn nút để xem từng bước: n % 2, so sánh, kết quả.
11. Ứng dụng của if
  • kiểm tra dữ liệu nhập
  • quyết định logic game
  • phân loại học sinh
  • kiểm tra điều kiện thuật toán
🧪 Bài tập luyện tập
  1. Nhập số nguyên n, in: So duong / So am / So 0.
  2. Nhập điểm, in: ≥5 → Dau, <5 → Rot.
  3. Nhập 3 số, in ra số lớn nhất.
❓ Quiz nhanh

"==" trong C++ nghĩa là gì?

Chọn 1 đáp án.