Σε αυτό το σεμινάριο, θα μάθουμε σχετικά με τους σχετικούς και λογικούς τελεστές με τη βοήθεια παραδειγμάτων.
Στην C ++, σχεσιακή και λογικοί τελεστές σύγκρισης δύο ή περισσότερων τελεστές και επιστροφή είτε true
ή false
αξίες.
Χρησιμοποιούμε αυτούς τους χειριστές στη λήψη αποφάσεων.
Σχετικοί χειριστές C ++
Ένας σχεσιακός τελεστής χρησιμοποιείται για να ελέγξει τη σχέση μεταξύ δύο τελεστών. Για παράδειγμα,
// checks if a is greater than b a> b;
Εδώ >
είναι ένας σχεσιακός χειριστής. Ελέγχει εάν το a είναι μεγαλύτερο από το b ή όχι.
Εάν η σχέση είναι αληθής , επιστρέφει 1 ενώ αν η σχέση είναι ψευδής , επιστρέφει 0 .
Ο παρακάτω πίνακας συνοψίζει τους σχετικούς τελεστές που χρησιμοποιούνται στο C ++.
Χειριστής | Εννοια | Παράδειγμα |
---|---|---|
== | Είναι ίσο με | 3 == 5 μας δίνει ψευδείς |
!= | Οχι ίσο με | 3 != 5 μας δίνει αλήθεια |
> | Μεγαλύτερος από | 3> 5 μας δίνει ψευδείς |
< | Λιγότερο από | 3 < 5 μας δίνει αλήθεια |
>= | Μεγαλύτερο ή ίσο με | 3>= 5 δώσε μας ψευδείς |
<= | Λιγότερο από ή ίσο με | 3 <= 5 μας δίνει αλήθεια |
== Χειριστής
Το ίσο με τις ==
επιστροφές χειριστή
true
- εάν και οι δύο τελεστές είναι ίσοι ή ίδιοιfalse
- εάν οι τελεστές είναι άνισοι
Για παράδειγμα,
int x = 10; int y = 15; int z = 10; x == y // false x == z // true
Σημείωση: Ο σχετικός χειριστής ==
δεν είναι ίδιος με τον χειριστή ανάθεσης =
. Ο χειριστής εκχώρησης =
εκχωρεί μια τιμή σε μια μεταβλητή, σταθερά, πίνακα ή διάνυσμα. Δεν συγκρίνει δύο τελεστές.
! = Χειριστής
Το όχι ίσο με τις !=
επιστροφές του χειριστή
true
- εάν και οι δύο τελεστές είναι άνισοιfalse
- εάν και οι δύο τελεστές είναι ίσοι.
Για παράδειγμα,
int x = 10; int y = 15; int z = 10; x != y // true x != z // false
> Χειριστής
Το μεγαλύτερο από το >
επιστρέφει ο χειριστής
true
- εάν ο αριστερός τελεστής είναι μεγαλύτερος από το δεξίfalse
- εάν ο αριστερός τελεστής είναι μικρότερος από το δεξί
Για παράδειγμα,
int x = 10; int y = 15; x> y // false y> x // true
<Χειριστής
Το λιγότερο από το χειριστή <
επιστρέφει
true
- εάν ο αριστερός τελεστής είναι μικρότερος από το δεξίfalse
- εάν ο αριστερός τελεστής είναι μεγαλύτερος από δεξιά
Για παράδειγμα,
int x = 10; int y = 15; x < y // true y < x // false
> = Χειριστής
Το μεγαλύτερο ή ίσο με τις >=
επιστροφές χειριστή
true
- εάν ο αριστερός τελεστής είναι είτε μεγαλύτερος είτε ίσος προς τα δεξιάfalse
- εάν ο αριστερός τελεστής είναι μικρότερος από το δεξί
Για παράδειγμα,
int x = 10; int y = 15; int z = 10; x>= y // false y>= x // true z>= x // true
<= Χειριστής
Το λιγότερο ή ίσο με τις <=
επιστροφές χειριστή
true
- εάν ο αριστερός τελεστής είναι είτε μικρότερος ή ίσος προς τα δεξιάfalse
- εάν ο αριστερός τελεστής είναι μεγαλύτερος από δεξιά
Για παράδειγμα,
int x = 10; int y = 15; x> y // false y> x // true
Για να μάθετε πώς μπορούν να χρησιμοποιηθούν σχετικοί τελεστές με συμβολοσειρές, ανατρέξτε στο σεμινάριό μας εδώ.
Λογικοί χειριστές C ++
Χρησιμοποιούμε λογικούς τελεστές για να ελέγξουμε εάν μια έκφραση είναι αληθής ή ψευδής . Εάν η έκφραση είναι αληθής , επιστρέφει 1 ενώ αν η έκφραση είναι ψευδής , επιστρέφει 0 .
Χειριστής | Παράδειγμα | Εννοια |
---|---|---|
&& | ΕΚΦΡΑΣΗ1 && έκφραση 2 | Λογική ΚΑΙ. αληθές μόνο εάν όλοι οι τελεστές είναι αληθείς. |
|| | έκφραση1 || έκφραση 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.
Πίνακας αλήθειας του! Χειριστής
Ας το να είναι ένας τελεστής. Τότε,
Παράδειγμα 3: C ++! Χειριστής
// 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; )
Παραγωγή
1 0
Σε αυτό το πρόγραμμα, δηλώνουμε και αρχικοποιούμε μια int
μεταβλητή α με την τιμή 5
. Στη συνέχεια εκτυπώνουμε μια λογική έκφραση
!(a == 0)
Εδώ, a == 0
αξιολογείται false
ως η τιμή του είναι 5
. Ωστόσο, χρησιμοποιούμε το ΟΧΙ !
στο a == 0
. Δεδομένου ότι a == 0
αξιολογείται false
, ο !
χειριστής αναστρέφει τα αποτελέσματα a == 0
και το τελικό αποτέλεσμα είναι true
.
Ομοίως, η έκφραση !(a == 5)
τελικά επιστρέφει false
επειδή a == 5
είναι true
.