C++ ? Ternärer Operator

C++ ?  Ternärer Operator
„Der bedingte Operator und die IF-ELSE-Erklärung verwenden beide dieselbe Technik. In einigen Programmiersprachen gibt es einen Bediener, der als ternärer Operator bekannt ist, der drei Operanden im Gegensatz zu den üblichen oder zwei, die die meisten Betreiber benötigen. Es bietet die Möglichkeit, einen einfachen If-ELSE-Block zu verdichten. In diesem Leitfaden wird der ternäre Operator in C ++ über Beispiele abgedeckt. In einigen Fällen kann die Anweisung if sonst in C ++ - Anwendungen durch den ternären Operator ersetzt werden, der häufig als bedingter Bediener bezeichnet wird.”

Syntax des ternären Operators in C++

Die drei Operanden sind für den ternären Operator erforderlich: die bedingte, das wahre und das falsche. Wenn der ternäre Operator die Testbedingung analysiert und je nach Ergebnis einen Codeblock ausführt, lautet die Syntax:

# (exp_1) ? exp_2: exp_3

Hier repräsentiert „Exp“ den Ausdruck. Abhängig vom Ergebnis eines Ausdrucks gibt dieser Bediener einen von zwei Werten zurück. Ausdrücke 2 und 3 werden bewertet, und ihre Werte werden als endgültige Ergebnisse zurückgegeben, wenn „exp_1“ auf einen booleschen True bewertet wird. Ansonsten wird Expression 1 an einen booleschen Falsch bewertet, und Expression 2 wird bewertet und sein Wert wird als Endergebnis zurückgegeben.

Beispiel 1

Hier ist ein unkompliziertes Beispielprogramm, das zeigt, wie der ternäre Operator von C ++ verwendet wird.

#enthalten
#enthalten
Verwenden von Namespace STD;
int main ()
Doppel -CGPA;
Cout << "Enter your CGPA: ";
CIN >> CGPA;
String student_result = (cgpa> = 1.5) ? "bestanden": "fehlgeschlagen";
Cout << "You " << student_result << " the semester." << endl;
Rückkehr 0;

Im Programm haben wir unseren Header -Abschnitt mit den C ++ - Bibliotheken gefüllt. Danach haben wir den Namespace STD mit dem Schlüsselwort "Verwenden" hinzugefügt. Dann wurde die Variable „CGPA“ mit der Art der Daten „doppelt“ darin deklariert. In der nächsten Zeile haben wir den Benutzer gebeten, das CGPA einzugeben, indem wir den COUT -Befehl drucken. Mit dem Befehl CIN fügen Benutzer das CGPA hinzu.

Dann haben wir eine andere Variable erstellt, "student_result", die einen ternären Operator hat. Der ternäre Operator benötigt hier die drei Ausdrücke. Erstens ist die Bedingung, die überprüft, ob der vom Benutzer eingegebene CGPA größer oder gleich “1 ist.5 ”. In diesem Fall wird die Anweisung „bestanden“ gedruckt, sonst wird der dritte Ausdruck gedruckt. Das Ergebnis wird angezeigt, wenn Sie den COUT -Befehl verwenden.

Nehmen wir an, der Benutzer tippt die CGPA „3.5 ”. CGPA> = 1.5 bewertet dann wahr und erfüllt das Kriterium. Das Ergebnis wird also die erste Begriff „übergeben“ angegeben.

Nehmen wir an, der Benutzer Typen 1.00. Infolgedessen der Zustand cgpa> = 1.5 wird fälschlicherweise bewertet. Daher wird das Ergebnis der zweite Ausdruck "gescheitert" gegeben.

Beispiel 2

Bestimmte Arten von Anweisungen in C ++ können mit dem ternären Operator ausgetauscht werden. Wir können diesen Code als Beispiel ändern. Das erste Beispielprogramm verwendet die IF-ELSE-Bedingung, und das andere Beispielprogramm verwendet den ternären Operator.


Verwenden von Namespace STD;
int main ()
int num = -3;
Cout<< "num :" << 0)
Wenn
Cout<< "\nPositive Integer";
anders
Cout<< "\nNegative Integer!";
Rückkehr 0;

Wir haben die int -Datentypvariable „Num“ mit dem negativen Ganzzahlwert deklariert und initialisiert. Danach wird mit dem COUT -Befehl der Wert "Num" gedruckt. Dann haben wir den IF-ELSE-Zustand. In der Bedingung „If“ haben wir die Bedingung angegeben, dass die Variable „Num“ größer sein sollte als der Wert Null. Wenn die Bedingung wahr wird, wird der COUT -Befehl unmittelbar nach dem Zustand „If“ gedruckt. Wenn die Bedingung falsch wird, wird die else -Cout -Anweisung gedruckt.

Da die Zahl ein negativer Wert ist, wird die If -Bedingung falsch und die

Als nächstes haben wir das obige Programm mit dem ternären Operator ausgeführt. Überprüfen Sie, ob der IF-ELSE-Zustand und der ternäre Operator die gleichen Effekte haben.

#enthalten
#enthalten
Verwenden von Namespace STD;
int main ()
int mynum = -7;
Cout << "Integer:" << MyNum << "\n";
String -Ergebnis;
Ergebnis = (mynum> = 0) ? "Positive ganze Zahl!":" Negative Ganzzahl!";
Cout << Outcome << endl;
Rückkehr 0;

Wir haben die Variable „Mynum“ deklariert und sie mit einem negativen Wert initialisiert. Wir haben den negativen Wert gedruckt, indem wir die Variable „Mynum“ innerhalb des COUT -Befehls aufgerufen haben. Dann setzen wir eine andere Variable als „Ergebnis“ mit dem String -Typ. Die Ergebnisvariable nimmt den ternären Operatorbetrieb an. Erstens haben wir die Bedingung, dass „Mynum“ größer sein sollte als Null. Danach setzen wir einen ternären Operator "?”. Die anderen beiden Ausdrücke werden nach dem Zustandsergebnis ausgeführt.

Da der Ganzzahlwert „-7“ der dritte Ausdruck ist, „negative Ganzzahl!”Wird auf der Eingabeaufforderung gedruckt. Hier ist die Ausgabe aus beiden Anwendungen gleich. Der ternäre Operator verbessert jedoch die Lesbarkeit und Sauberkeit unseres Codes.

Beispiel 3

Darüber hinaus können ternäre Betreiber ineinander eingesetzt werden. Verwenden Sie den verschachtelten ternären Operator, um zu überprüfen, ob ein Wert im folgenden Programm positiv, negativ oder Null ist.

#enthalten
#enthalten
Verwenden von Namespace STD;
int main ()
int Integer = 0;
String -Ergebnis;
Ergebnis = (Integer == 0) ? "Zero": ((Ganzzahl> 0) ? "Positiv negativ");
Cout<< "Integer is " <Rückkehr 0;

Beginnen Sie einfach mit der Hauptmethode des Programms. In der Int main () haben wir die Variable mit dem Namen "Integer" erstellt und ihren Wert als Null gesetzt. Dann haben wir eine andere Variable, "Ergebnis", mit der Datentyp -Zeichenfolge definiert. Wir haben das Variable „Ergebnis“ festgelegt, um den ternären Operator auf sie zu umgehen. Die Bedingung ist, dass der Variable "Ganzzahl" -Wert gleich Null sein sollte "Integer == 0". Die Anfangsbedingung (Integer == 0) bestimmt, ob eine gegebene Ganzzahl Null ist oder nicht. Wenn ja, wird das Ergebnis der Zeichenfolgewert „Null angegeben.Wenn die Antwort richtig ist. Andernfalls wird die zweite Bedingung (Ganzzahl> 0) untersucht, wenn die erste Bedingung falsch ist.

Ja, die bereitgestellte Ganzzahl ist Null, wie im Skript gezeigt. Der Ausgang erzeugt die "Ganzzahl ist Null".

Abschluss

Wir sind uns bewusst, dass der bedingte Bediener der ternäre Operator ist. Mit Hilfe dieses Bedieners können wir einen Zustand überprüfen und im Einklang mit ihm handeln. Wir können dasselbe mit if-else-Bedingungen anstelle des ternären Operators erreichen. Dieses C ++ - Tutorial hat uns beigebracht, wie man den ternären Operator über seine Syntax- und Beispielprogramme verwendet. Denken Sie daran, dass der ternäre Operator nur verwendet werden darf, wenn die endgültige Aussage präzise ist.