Điều kiện phức tạp
Bài toán trước có thể được giải theo cách ngắn hơn bằng cách sử dụng các điều kiện phức tạp.
Hãy hiểu
điều kiện phức tạp là gì.
Các điều kiện đơn giản bao gồm một quan hệ (lớn hơn, nhỏ hơn, v.v.). Nhưng đôi khi cần phải kết hợp các điều kiện đơn giản thành những điều kiện phức tạp hơn. Ví dụ, bên ngoài trời lạnh và đang mưa. Hai điều kiện đơn giản (bên ngoài trời lạnh), (bên ngoài trời mưa) được liên kết ở đây bởi
AND
.
Điều kiện phức tạp - bao gồm hai hoặc nhiều điều kiện đơn giản được kết hợp với các phép toán logic .
Liên kết logic trong C++
&&
- phép nhân logic (AND);
||
- phép cộng logic (OR);
!
- phủ định logic (NOT).
Phép nhân logic (phép toán AND) đòi hỏi phải đáp ứng đồng thời hai điều kiện:
điều kiện_1 && điều kiện_2
sẽ được đánh giá là đúng chỉ khi cả hai điều kiện đơn giản đều đúng cùng một lúc.
Ngoài ra, trong ngôn ngữ lập trình C, nếu
condition_1
là sai thì
condition_2
sẽ không được chọn.
Phép nhân logic (phép toán OR) yêu cầu ít nhất một trong các điều kiện sau:
điều kiện_1 || điều kiện_2
sẽ đánh giá sai chỉ khi cả hai điều kiện đơn giản là sai cùng một lúc.
Ngoài ra, trong ngôn ngữ lập trình C, nếu condition_1
là true thì condition_2
sẽ không được kiểm tra.
Phép nhân logic (KHÔNG hoạt động)
!condition_1
sẽ đánh giá là sai nếu condition_1
đúng và ngược lại.
Ví dụ: hai điều kiện sau là tương đương: A>B
và !(A<=B)
.
Ưu tiên thực hiện các phép toán logic và quan hệ
1. Các phép toán trong ngoặc.
2. Thao tác NOT.
3. Quan hệ logic >, <, >=, <=, ==, !=.
4. Thao tác I.
5. Phép toán OR.
Dấu ngoặc đơn được dùng để thay đổi thứ tự của các hành động.
Biến Boolean
Trong nhiều ngôn ngữ lập trình, có thể sử dụng các biến lưu trữ giá trị boolean ("true"/"false"). Trong C++, các biến như vậy có thể nhận giá trị true
(true) hoặc false
(false). Ví dụ: một đoạn mã chương trình:
bool a, b;
a = đúng;
b=sai;
cout << một || b;
Hiển thị 1
(là true
, false
là 0
).
Các biến boolean thuộc loại bool
, được đặt theo tên của nhà toán học người Anh George Boole, người tạo ra đại số logic.