Trong lập trình C++, lệnh if else
là một lệnh rẻ nhánh chương trình thông dụng mà chúng ta sẽ học trong bài viết này. Chúng ta sẽ tìm hiểu về cấu trúc và ứng dụng của lệnh này trong lập trình C++.
Hình ảnh minh họa
1. Câu lệnh if else trong C++
Câu lệnh 'if else' trong C++ được sử dụng để điều khiển đoạn code được thực thi dựa trên một điều kiện. Có bốn loại cấu trúc cơ bản của câu lệnh này:
if statement
(Câu lệnh if)if else statement
(Câu lệnh if else)nested if statement
(Câu lệnh if lồng nhau)if else if ladder
(Câu lệnh else if)
Trước khi đi sâu vào từng loại cấu trúc, chúng ta sẽ tìm hiểu về khái niệm mệnh đề.
2. Mệnh đề và cấu trúc lệnh if trong C++
Mệnh đề trong lập trình C++ giống với mệnh đề trong cuộc sống hàng ngày. Nó gồm hai phần: điều kiện của mệnh đề và nội dung thực hiện của mệnh đề. Chúng ta có thể dùng câu lệnh if else để viết một ứng dụng dựa trên mệnh đề.
Ví dụ: "Nếu tôi thi được 10 điểm, bố mẹ sẽ cho tôi đi Du lịch Đà Lạt."
Trong ví dụ này:
- Điều kiện của mệnh đề là phải thi đạt 10 điểm
- Nội dung thực hiện là đi Du lịch Đà Lạt.
3. Cấu trúc lệnh if trong C++
Câu lệnh if là cấu trúc điều khiển đơn giản nhất, dùng để quyết định việc thực thi đoạn code. Nếu điều kiện đúng, đoạn code bên trong câu lệnh if sẽ được thực thi, nếu không, chương trình sẽ bỏ qua nó.
Cú pháp câu lệnh if:
if (condition)
{
// code thực thi nếu condition đúng
}
Lưu ý: Nếu không cung cấp dấu {}
sau câu lệnh if, chỉ có một dòng lệnh theo sau nó sẽ được thực thi.
Hãy xem lưu đồ hoạt động của câu lệnh if:
Và kết quả sau khi thực thi đoạn code trên:
Như bạn thấy, vì biến i
có giá trị là 5, lệnh if thứ hai được thực hiện và kết quả là "5 bằng 5". Tiếp theo, các đoạn code bên ngoài câu lệnh if sẽ được thực thi, in ra dòng "Câu lệnh ở ngoài if".
4. Cấu trúc lệnh if else trong C++
Câu lệnh if else sẽ thực thi một đoạn code sau câu lệnh if nếu điều kiện đúng, ngược lại, một đoạn code sau câu lệnh else sẽ được thực thi.
Ví dụ: "Nếu bạn An đi học, bạn sẽ không bị phạt. Ngược lại, bạn An sẽ bị phạt."
Hãy xem cú pháp và lưu đồ hoạt động của câu lệnh if else:
Lưu đồ hoạt động:
Trong ví dụ này, vì biến i
có giá trị là 5, điều kiện (i > 5)
là FALSE
. Do đó, đoạn code trong câu lệnh else được thực thi, và sau đó các dòng lệnh bên ngoài câu lệnh if sẽ tiếp tục được thực thi. Kết quả sẽ như hình ảnh trên.
5. Lệnh if else lồng nhau trong C++
Câu lệnh if lồng nhau là câu lệnh if nằm bên trong một câu lệnh if khác. Đây là cấu trúc phổ biến và giúp rẻ nhánh những chương trình phức tạp.
Hãy chạy từ trên xuống và từ trái qua phải. Vì biến i
có giá trị là 15, nên đoạn code bên trong câu lệnh if đầu tiên sẽ được chạy. Bên trong còn có một câu lệnh if else khác nên quy trình hoạt động là như sau, và kết quả sẽ là "15 nhỏ hơn hoặc bằng 15".
6. Cấu trúc lệnh if else if ladder trong C++
Câu lệnh if else if cho phép so sánh nhiều điều kiện. Chương trình sẽ chạy từ trên xuống dưới, và nếu gặp điều kiện đúng, sẽ thực thi đoạn code bên trong điều kiện đó. Cấu trúc này cho phép thực thi nhiều đoạn code khác nhau.
Lưu đồ hoạt động:
Cách này có thể thay thế cho lệnh if else lồng nhau trong một số trường hợp. Do đó, cách này được sử dụng phổ biến nhất trong thực tế.
7. Câu lệnh if rút gọn trong C++
Trong C++, chúng ta có thể viết rút gọn câu lệnh if bằng cách sử dụng toán tử ba ngôi. Toán tử này khá đơn giản và chỉ được sử dụng trong trường hợp muốn lấy một giá trị dựa vào một điều kiện đơn giản.
Cú pháp của toán tử ba ngôi:
condition ? true_value : false_value
Trong đó:
condition
là điều kiện kiểm tra.true_value
là giá trị sẽ được lấy nếucondition
làtrue
.false_value
là giá trị sẽ được lấy nếucondition
làfalse
.
Ví dụ: In ra "số 1" hoặc "khác 1" dựa vào giá trị mà người dùng nhập vào.
Kết luận
Chúng ta đã tìm hiểu về 4 loại cấu trúc điều khiển if trong C++ là câu lệnh if, câu lệnh if-else, câu lệnh if lồng nhau và câu lệnh if-else-if. Mỗi loại cấu trúc có ứng dụng riêng, phần nào giúp chúng ta rẻ nhánh chương trình theo yêu cầu của bài toán.
Trong bài học tiếp theo, chúng ta sẽ tìm hiểu cú pháp và ứng dụng của câu lệnh switch-case trong lập trình C++.
Bài viết này được đăng tại [free tuts .net]