Operator ternar C++

Operator Ternar C



„Operatorul condiționat și declarația if-else folosesc ambele aceeași tehnică, dar operatorul condiționat face ca expresiile if-else să fie cât mai scurte posibil, în timp ce expresia if-else ocupă mai mult spațiu. În unele limbaje de programare, există un operator cunoscut sub numele de operator ternar care acceptă trei operanzi spre deosebire de unul sau doi obișnuiți pe care cei mai mulți operatori îi cer. Oferă un mijloc de condensare a unui bloc de bază if-else. În acest ghid, operatorul ternar din C++ va fi acoperit prin exemple. În unele cazuri, declarația if else din aplicațiile C++ poate fi înlocuită cu operatorul ternar, adesea cunoscut sub numele de operator condiționat.”

Sintaxa operatorului ternar în C++

Cei trei operanzi sunt necesari pentru operatorul ternar: condiționalul, adevăratul și fals. Pe măsură ce operatorul ternar analizează condiția de testare și, în funcție de rezultat, execută un bloc de cod, sintaxa este:

# (exp_1) ? exp_2 : exp_3

Aici „exp” reprezintă expresia. În funcție de rezultatul unei expresii, acest operator returnează una dintre cele două valori. Expresiile 2 și 3 sunt evaluate, iar valorile lor sunt returnate ca rezultate finale dacă „exp_1” este evaluat la un boolean adevărat; altfel, expresia 1 este evaluată la un boolean fals, iar expresia 2 este evaluată, iar valoarea sa este returnată ca rezultat final.







Exemplul 1

Iată un exemplu de program simplu care arată cum să utilizați operatorul ternar al C++.



#include

#include <șir>

folosind namespace std ;

int principal ( ) {
dubla CGPA ;
cout <> CGPA ;

string student_result = ( CGPA >= 1.5 ) ? 'a trecut' : 'a eșuat' ;

cout << 'Tu ' << student_rezultat << ' semestrul.' ;

întoarcere 0 ;
}



În program, am completat secțiunea antet cu bibliotecile C++. După aceea, am adăugat namespace std cu cuvântul cheie „utilizare”. Apoi, variabila „CGPA” cu tipul de date „dublu” a fost declarată în interiorul acesteia. În rândul următor, am cerut utilizatorului să introducă CGPA prin imprimarea comenzii cout. Cu comanda cin, utilizatorii adaugă CGPA.





Apoi, am creat o altă variabilă, „student_result”, care are un operator ternar. Operatorul ternar are nevoie de cele trei expresii aici. Prima este condiția care verifică dacă CGPA introdus de utilizator este mai mare sau egal cu „1.5”. Dacă da, va fi tipărită mențiunea „a trecut” sau va fi tipărită a treia expresie. Rezultatul va fi afișat atunci când utilizați comanda cout.

Să presupunem că utilizatorul introduce CGPA „3.5”. CGPA >= 1,5 apoi se evaluează la adevărat, îndeplinind criteriul. Deci, rezultatul primește primul termen „trecut”.



Să presupunem că utilizatorul scrie 1.00. Ca urmare, condiția CGPA >= 1,5 este evaluată în mod fals. Prin urmare, rezultatul primește a doua expresie, „eșuat”.

Exemplul 2

Anumite tipuri de instrucțiuni if ​​else din C++ pot fi schimbate cu operatorul ternar. Putem modifica acest cod ca exemplu. Primul exemplu de program folosește condiția if-else, iar celălalt exemplu de program folosește operatorul ternar.

#include

folosind namespace std ;

int principal ( ) {

int pe unu = - 3 ;
cout << 'pe unu :' < 0 )
cout << ' \n Număr întreg pozitiv' ;
altfel
cout << ' \n Număr întreg negativ!' ;

întoarcere 0 ;
}

Am declarat și inițializat variabila int de tipul de date „num” cu valoarea întregului negativ. După aceea, cu comanda cout, este tipărită valoarea „num”. Apoi, avem condiția dacă-altfel. În cadrul condiției „dacă”, am specificat condiția ca variabila „num” să fie mai mare decât valoarea zero. Dacă condiția devine adevărată, atunci comanda cout imediat după condiția „dacă” va fi tipărită. Dacă condiția devine falsă, va fi tipărită declarația else cout.

Deoarece numărul este o valoare negativă, condiția if devine falsă și

Apoi, am executat programul de mai sus cu operatorul ternar. Să verificăm dacă condiția if-else și operatorul ternar au aceleași efecte.

#include

#include <șir>

folosind namespace std ;

int principal ( ) {

int MyNum = - 7 ;
cout << 'Întreg:' << MyNum < 0 ) ? 'Număr întreg pozitiv!' : „Număr întreg negativ!” ;
cout << Rezultat << endl ;

întoarcere 0 ;
}

Am declarat variabila „MyNum” și am inițializat-o cu o valoare negativă. Am tipărit valoarea negativă apelând variabila „MyNum” în interiorul comenzii cout. Apoi, setăm o altă variabilă ca „Rezultat” cu tipul șirului. Variabila rezultat ia operația de operator ternar. În primul rând, avem condiția ca „MyNum” să fie mai mare decât zero. După aceea, punem un operator ternar „?”. Celelalte două expresii vor fi executate după rezultatul condiției.

Deoarece valoarea întregului este „-7”, a treia expresie, „Integer negativ!” este imprimat pe prompt. Aici, rezultatul ambelor aplicații este același. Operatorul ternar, totuși, îmbunătățește lizibilitatea și curățenia codului nostru.

Exemplul 3

În plus, operatorii ternari pot fi folosiți unul în interiorul celuilalt. Utilizați operatorul ternar imbricat pentru a verifica dacă o valoare este pozitivă, negativă sau zero în programul următor.

#include

#include <șir>

folosind namespace std ;

int principal ( ) {
int întreg = 0 ;
șir Rezultat ;

Rezultat = ( întreg == 0 ) ? 'Zero' : ( ( întreg > 0 ) ? 'Pozitiv' : 'Negativ' ) ;

cout << 'Integer este' << Rezultat ;

întoarcere 0 ;
}

Începeți doar cu metoda principală a programului. În int main(), am creat variabila cu numele „integer” și i-am stabilit valoarea la zero. Apoi, am definit o altă variabilă, „Rezultat”, cu șirul de tip de date. Am setat variabila „Rezultat”, ocolind operatorul ternar la aceasta. Condiția este ca valoarea variabilei „întreg” să fie egală cu zero „întreg == 0”. Condiția inițială, (întreg == 0), determină dacă un întreg dat este sau nu zero. Dacă da, rezultatul primește valoarea șirului „Zero”. dacă răspunsul este corect. În caz contrar, dacă prima condiție este falsă, a doua condiție (întreg > 0) este examinată.

Da, numărul întreg furnizat este zero, așa cum se arată în script. Ieșirea generează „Numărul întreg este zero”.

Concluzie

Suntem conștienți că operatorul condiționat este operatorul ternar. Cu ajutorul acestui operator, putem verifica o condiție și acționăm în conformitate cu aceasta. Putem realiza același lucru folosind condiții if-else în loc de operatorul ternar. Acest tutorial C++ ne-a învățat cum să folosim Operatorul Ternar prin sintaxa și programele de exemplu. Rețineți că operatorul ternar trebuie utilizat numai dacă declarația finală este concisă.