Trong hướng dẫn này, chúng ta sẽ tìm hiểu về các toán tử quan hệ và logic với sự trợ giúp của các ví dụ.
Trong C ++, các toán tử quan hệ và logic so sánh hai hoặc nhiều toán hạng và trả về một true
hoặc false
các giá trị.
Chúng tôi sử dụng các toán tử này trong việc ra quyết định.
Toán tử quan hệ C ++
Một toán tử quan hệ được sử dụng để kiểm tra mối quan hệ giữa hai toán hạng. Ví dụ,
// checks if a is greater than b a> b;
Đây, >
là một toán tử quan hệ. Nó kiểm tra xem a có lớn hơn b hay không.
Nếu quan hệ là đúng , nó trả về 1 trong khi nếu quan hệ là sai , nó trả về 0 .
Bảng sau đây tóm tắt các toán tử quan hệ được sử dụng trong C ++.
Nhà điều hành | Ý nghĩa | Thí dụ |
---|---|---|
== | Bằng | 3 == 5 cho chúng tôi sai |
!= | Không bằng | 3 != 5 cho chúng tôi sự thật |
> | Lớn hơn | 3> 5 cho chúng tôi sai |
< | Ít hơn | 3 < 5 cho chúng tôi sự thật |
>= | Lớn hơn hoặc bằng | 3>= 5 cho chúng tôi sai |
<= | Ít hơn hoặc bằng | 3 <= 5 cho chúng tôi sự thật |
== Nhà điều hành
==
Toán tử bằng với trả về
true
- nếu cả hai toán hạng bằng nhau hoặc giống nhaufalse
- nếu các toán hạng không bằng nhau
Ví dụ,
int x = 10; int y = 15; int z = 10; x == y // false x == z // true
Lưu ý: Toán tử quan hệ ==
không giống với toán tử gán =
. Toán tử =
gán sẽ gán giá trị cho một biến, hằng số, mảng hoặc vectơ. Nó không so sánh hai toán hạng.
! = Nhà điều hành
Trả về !=
toán tử không bằng
true
- nếu cả hai toán hạng không bằng nhaufalse
- nếu cả hai toán hạng bằng nhau.
Ví dụ,
int x = 10; int y = 15; int z = 10; x != y // true x != z // false
> Nhà điều hành
>
Toán tử lớn hơn trả về
true
- nếu toán hạng bên trái lớn hơn bên phảifalse
- nếu toán hạng bên trái nhỏ hơn bên phải
Ví dụ,
int x = 10; int y = 15; x> y // false y> x // true
<Người điều hành
Toán tử less than <
trả về
true
- nếu toán hạng bên trái nhỏ hơn bên phảifalse
- nếu toán hạng bên trái lớn hơn bên phải
Ví dụ,
int x = 10; int y = 15; x < y // true y < x // false
> = Nhà điều hành
>=
Toán tử lớn hơn hoặc bằng trả về
true
- nếu toán hạng bên trái lớn hơn hoặc bằng bên phảifalse
- nếu toán hạng bên trái nhỏ hơn bên phải
Ví dụ,
int x = 10; int y = 15; int z = 10; x>= y // false y>= x // true z>= x // true
<= Nhà điều hành
Toán tử nhỏ hơn hoặc bằng <=
trả về
true
- nếu toán hạng bên trái nhỏ hơn hoặc bằng bên phảifalse
- nếu toán hạng bên trái lớn hơn bên phải
Ví dụ,
int x = 10; int y = 15; x> y // false y> x // true
Để tìm hiểu cách sử dụng các toán tử quan hệ với chuỗi, hãy tham khảo hướng dẫn của chúng tôi tại đây.
Toán tử logic C ++
Chúng tôi sử dụng các toán tử logic để kiểm tra xem một biểu thức là đúng hay sai . Nếu biểu thức đúng , nó trả về 1 trong khi nếu biểu thức sai , nó trả về 0 .
Nhà điều hành | Thí dụ | Ý nghĩa |
---|---|---|
&& | biểu thức 1 && biểu thức 2 | Lôgic AND. chỉ đúng nếu tất cả các toán hạng đều đúng. |
|| | biểu thức1 || biểu thức 2 | Logical OR. true if at least one of the operands is true. |
! | !expression | Logical NOT. true only if the operand is false. |
C++ Logical AND Operator
The logical AND operator &&
returns
true
- if and only if all the operands aretrue
.false
- if one or more operands arefalse
.
Truth Table of && Operator
Let a and b be two operands. 0 represents false while 1 represents true. Then,
a | b | a && b |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
As we can see from the truth table above, the &&
operator returns true only if both a
and b
are true.
Note: The Logical AND operator && should not be confused with the Bitwise AND operator &.
Example 1: C++ OR Operator
// C++ program demonstrating && operator truth table #include using namespace std; int main() ( int a = 5; int b = 9; // false && false = false cout < b)) << endl; // false && true = false cout << ((a == 0) && (a < b)) << endl; // true && false = false cout < b)) << endl; // true && true = true cout << ((a == 5) && (a < b)) << endl; return 0; )
Output
0 0 0 1
In this program, we declare and initialize two int
variables a and b with the values 5
and 9
respectively. We then print a logical expression
((a == 0) && (a> b))
Here, a == 0
evaluates to false
as the value of a is 5
. a> b
is also false
since the value of a is less than that of b. We then use the AND operator &&
to combine these two expressions.
From the truth table of &&
operator, we know that false && false
(i.e. 0 && 0
) results in an evaluation of false
(0
). This is the result we get in the output.
Similarly, we evaluate three other expressions that fully demonstrate the truth table of the &&
operator.
C++ Logical OR Operator
The logical OR operator ||
returns
true
- if one or more of the operands aretrue
.false
- if and only if all the operands arefalse
.
Truth Table of || Operator
Let a and b be two operands. Then,
a | b | a || b |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
As we can see from the truth table above, the ||
operator returns false only if both a
and b
are false.
Example 2: C++ OR Operator
// C++ program demonstrating || operator truth table #include using namespace std; int main() ( int a = 5; int b = 9; // false && false = false cout < b)) << endl; // false && true = true cout << ((a == 0) || (a < b)) << endl; // true && false = true cout < b)) << endl; // true && true = true cout << ((a == 5) || (a < b)) << endl; return 0; )
Output
0 1 1 1
In this program, we declare and initialize two int
variables a and b with the values 5
and 9
respectively. We then print a logical expression
((a == 0) || (a> b))
Here, a == 0
evaluates to false
as the value of a is 5
. a> b
is also false
since the value of a is less than that of b. We then use the OR operator ||
to combine these two expressions.
From the truth table of ||
operator, we know that false || false
(i.e. 0 || 0
) results in an evaluation of false
(0
). This is the result we get in the output.
Similarly, we evaluate three other expressions that fully demonstrate the truth table of ||
operator.
C++ Logical NOT Operator !
The logical NOT operator !
is a unary operator i.e. it takes only one operand.
It returns true when the operand is false, and false when the operand is true.
Bảng sự thật của! Nhà điều hành
Cho một toán hạng. Sau đó,
Ví dụ 3: C ++! Nhà điều hành
// C++ program demonstrating ! operator truth table #include using namespace std; int main() ( int a = 5; // !false = true cout << !(a == 0) << endl; // !true = false cout << !(a == 5) << endl; return 0; )
Đầu ra
1 0
Trong chương trình này, chúng ta khai báo và khởi tạo một int
biến a với giá trị 5
. Sau đó, chúng tôi in một biểu thức logic
!(a == 0)
Ở đây, được a == 0
đánh giá false
là giá trị của a là 5
. Tuy nhiên, chúng tôi sử dụng toán tử NOT !
on a == 0
. Vì a == 0
đánh giá thành false
, !
toán tử đảo ngược kết quả của a == 0
và kết quả cuối cùng là true
.
Tương tự, biểu thức !(a == 5)
cuối cùng trả về false
vì a == 5
là true
.