Bài 7: Lệnh điều kiện if - else

Tủ sách mở Wikibooks

Trong thực tế, có những công việc chỉ được thực hiện khi thỏa mãn một điều nào đó. Trong lập trình, có những câu lệnh chỉ được thực thi khi thỏa mãn điều kiện cụ thể. Cấu trúc hoạt động như trên gọi là cấu trúc rẽ nhánh, được thực hiện bởi các câu lệnh điều kiện. Trong bài này, chúng ta sẽ học về hai lệnh điều kiện cơ bản là ifelse. Sang bài 8, ta sẽ được học về lệnh else if sau.

Lệnh if[sửa]

Để mô tả cấu trúc rẽ nhánh, ta sử dụng bắt đầu với câu lệnh if. Cú pháp câu lệnh if như sau:

Cú pháp thông thường Cú pháp rút gọn
if (<điều kiện>) {
    <khối lệnh>
}
if (<điều kiện)
    <câu lệnh>

Trong đó:

Điều kiện: là biểu thức so sánh hoặc logic có kết quả là true/false.
Khối lệnh: là dãy các câu lệnh thực thi nếu thỏa mãn điều kiện. Nếu khối lệnh gồm duy nhất 1 câu lệnh thì có thể lược bỏ cặp dấu { }

Với câu lệnh if như trên, nếu điều kiện đúng thì khối lệnh bên trong sẽ được chạy, nếu điều kiện sai thì sẽ không chạy. Dưới đây là đoạn mã ví dụ về sử dụng câu lệnh if:

if (a % 2 == 0) {
    a = a + 1;
    cout << a;
} 
if (a > 0) 
    cout << "a la so duong";
    
    
Nếu a là số chẵn, in ra số lẻ gần nhất và lớn hơn a Thông báo nếu a là số dương

Lệnh else[sửa]

Lệnh else có thể kết hợp với câu lệnh if, nếu điều kiện đúng thì khối lệnh nằm trong lệnh if sẽ được chạy, nếu sai thì khối lệnh nằm trong lệnh else sẽ được chạy. Cú pháp câu lệnh else như sau:

<lệnh if>

else {
    <khối lệnh>
}
<lệnh if>

else
    <câu lệnh>;

Cú pháp thông thường Ngắn gọn nếu chỉ có duy nhất 1 lệnh

Dưới đây là đoạn mã ví dụ về sử dụng cặp lệnh if - else:

if (a > 0) 
    cout << "a la so duong";
else
    cout << "a khong phai so duong";
  
if (a % 2 == 0) {
    cout << "a la so chan";
} else {
    cout << "a la so le";
}
Xét a có phải số dương không Xét tính chẵn lẻ của a

Lồng ghép lệnh[sửa]