Menu
CoddyTech

If và else

Thuộc phần Kiến thức nền tảng trong hành trình C++ của Coddy. Bài học 28 trên 74.

if cho phép chúng ta chạy một đoạn code cụ thể nếu điều kiện được đáp ứng, nhưng nếu điều kiện không được đáp ứng thì sao?

Để làm điều đó, ta dùng câu lệnh else:

int age = 15;
std::string status = "None";
if (age >= 18) {
    status = "Adult";
} else {
    status = "Young";
}

Trong ví dụ trên, age nhỏ hơn 18, nghĩa là chương trình sẽ chạy phần code trong else và status sẽ chứa "Young".

Chúng ta thậm chí có thể làm cho câu lệnh này rõ nghĩa hơn bằng cách dùng câu lệnh else if:

int age = 68;
std::string status = "None";
if (age < 18) {
    status = "Young";
} else if (age >= 18 && age <= 65) {
    status = "Adult";
} else {
    status = "Old";
}

Ở đây, chương trình kiểm tra xem age có nhỏ hơn 18 không. Nếu không, chương trình sẽ tiếp tục với điều kiện tiếp theo và kiểm tra xem age có nằm trong khoảng từ 18 đến 65 không. Nếu điều kiện đó cũng không thỏa mãn, chương trình sẽ đặt status thành "Old".

Chúng ta có thể thêm bao nhiêu câu lệnh else if tùy ý:

if (condition1) {
    code;
} else if (condition2) {
    code;
} else if (condition3) {
    code;
}
...
challenge icon

Thử thách

Người mới

Bạn được cung cấp một đoạn code nhận vào một số cho biết tốc độ gió và lưu số đó vào biến có tên wind.

Lưu ý: trong các bài học tiếp theo, chúng ta sẽ học cách nhận đầu vào từ người dùng. Hiện tại, đừng chỉnh sửa dòng đầu tiên.

 

Nhiệm vụ của bạn là khởi tạo biến status dựa trên các điều kiện sau:

  • "Calm" nếu wind nhỏ hơn 8,
  • "Breeze" nếu wind nằm trong khoảng từ 8 đến 31, bao gồm cả 8 và 31.
  • "Gale" nếu wind nằm trong khoảng từ 32 đến 63, bao gồm cả 32 và 63.
  • "Storm" trong các trường hợp còn lại

Xem các test case để biết tất cả đầu vào và đầu ra mong đợi

Tự làm thử

#include <iostream>

int main() {
    int wind;
    std::cin >> wind; // Đừng thay đổi dòng này
    std::string status = "unset";
    // Viết code của bạn bên dưới
    
    
    // Đừng thay đổi dòng bên dưới
    std::cout << "status = " << status;
    return 0; 
}
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Kiến thức nền tảng

Tự luyện tập: Trình biên dịch C++ online