Príklady priorít C++

Priklady Priorit C



V C++, keď pracujeme s operátormi, existuje postupnosť, v ktorej sa vykonávajú všetky operácie. Prednosť operátorov sa používa pri práci s viacerými operátormi vo výraze nášho kódu. Napríklad pri práci s operátormi sčítania, odčítania, násobenia a delenia sa operácie násobenia a delenia vykonávajú ako prvé zľava doprava, pretože majú vysokú prioritu, a operácie sčítania a odčítania sa vykonávajú ako ďalšie zľava doprava. nízka priorita ako násobenie a delenie. Ak však výraz obsahuje iba operátory sčítania a odčítania, operácia sa jednoducho vykoná zľava doprava. Tu si ukážeme tabuľku priority operátorov a príklady priority operátorov.

Operátorská priorita aritmetických operácií







Prevádzka Operátori Prednosť
zátvorkách () Tieto zátvorky sa ovládajú.
násobenie, delenie, modul *, /, % Tieto operácie sa vykonávajú a ich poradie je zľava doprava.
sčítanie, odčítanie +, – Tieto operácie sa vykonávajú na konci a ich postupnosť je zľava doprava.

Príklad 1:

Začnime náš kód zahrnutím súboru hlavičky s názvom „iostrem“. Mnoho funkcií je deklarovaných v tomto hlavičkovom súbore „iostream“, ktorý budeme používať v našom kóde. Pod ním napíšeme „namespace std“ a vyvoláme „main()“ dopredu. Tu v „main()“ deklarujeme premenné s názvom „i“, „j“ a „k“ s „int“ a hodnoty, ktoré tu odovzdávame, sú „10“, „37“ a „29“. resp. Deklarujeme tiež premennú „r“, kde je uložený výsledok.



Potom napíšeme výraz pomocou operátorov „+“, „/“ a „-“. Ako sme už vysvetlili, tieto operácie sa vykonávajú postupne. Výraz, ktorý sme tu umiestnili, je „i + j / k – j“, v ktorom sa najprv vykoná delenie a potom sa vykonajú operácie sčítania a odčítania. Zobrazuje výsledok v celočíselných hodnotách, keď deklarujeme premennú „r“ ako celé číslo. V nasledujúcom texte zobrazíme vypočítaný výsledok pomocou „cout“.



Kód 1:

#include

použitím menný priestor std ;

int Hlavná ( )

{

int i = 10 , j = 37 , k = 29 , r ;

r = i + j / k - j ;

cout << 'Výsledok daného výrazu je = ' << r ;

vrátiť 0 ;

}

Výkon:

Po vykonaní všetkých operácií je výstup „-26“. Tento výsledok sa vypočíta podľa priority operátora, ktorú poskytuje jazyk C++.





Príklad 2:

V tomto kóde po zahrnutí hlavičkového súboru a vyvolaní „main()“ inicializujeme premennú „int“ s názvom „val1“ a umiestnime výraz, do ktorého napíšeme „9 + 18 * 7“. Tu najskôr vykoná násobenie a potom k vynásobenej hodnote pridá „9“. V nasledujúcom texte inicializujeme „int val2“ s „9 + (18 * 7)“.



Tu sa najskôr riešia zátvorky. Potom sa uskutoční pridávanie. Potom inicializujeme aj „int val3“ výrazom „(9 + 18) * 7“. V tomto výraze sa najskôr operujú zátvorky a potom sa vykoná násobenie. Hodnoty výrazov sú rovnaké, ale poskytujú jedinečné výsledky z dôvodu priority operátora. Teraz sa posunieme dopredu a vytlačíme všetky výsledky, ktoré sú uložené v premenných „val1“, „val2“ a „val3“ pomocou „cout“.

Kód 2:

#include

použitím menný priestor std ;

int Hlavná ( ) {

int voľba1 = 9 + 18 * 7 ;
int val2 = 9 + ( 18 * 7 ) ;
int val3 = ( 9 + 18 ) * 7 ;


cout << 'Prvý výsledok ukazuje =' << voľba1 << endl ;

cout << 'Druhý výsledok ukazuje =' << val2 << endl ;

cout << 'Tretí výsledok ukazuje =' << val3 << endl ;

vrátiť 0 ;

}

Výkon:

Výsledok, ktorý dostaneme po výpočte daného výrazu, je nasledovný. Vidíme, že tretí výsledok nie je rovnaký ako ostatné dva, aj keď hodnoty sú rovnaké. Je to kvôli priorite operátora, ktorá sa aplikuje na operátor výrazu.

Príklad 3:

Tu inicializujeme rôzne premenné s rôznymi hodnotami a dátový typ všetkých týchto premenných je „int“. Máme celočíselné premenné „a“, „b“, „c“ a „d“ s hodnotami „14“, „9“, „15“ a „29“. Potom inicializujeme „int R1“ a výraz, ktorý tu umiestnime, je „a + b) * c / d“. Najprv sa riešia zátvorky. Potom sa vykonajú operácie násobenia a delenia. Nižšie uvádzame aj výsledok. Potom máme „int R2“ s výrazom „a – b * (d + a) + c“. Tu rieši aj zátvorky a následne sa odčítanie a sčítanie vykonáva podľa priority operátora. Vytlačíme aj jeho výsledok a inicializujeme „int R3“, kde je napísaný výraz „b – d + c * a“. V tomto výraze sa najskôr vykoná násobenie, potom sa vykoná odčítanie a sčítanie. Výsledok tohto výrazu je tiež zobrazený v nasledujúcom texte. Teraz máme posledný výraz „d + (a * b) / a“, ktorého výsledok je uložený v premennej „R4“. V tomto výraze sú najprv vyriešené zátvorky a potom rozdelené. Na konci sa vykoná pridanie. Výsledok tohto výrazu je znázornený takto:

Kód 3:

#include

použitím menný priestor std ;

int Hlavná ( ) {

int a = 14 ;
int b = 9 ;
int c = pätnásť ;
int d = 29 ;
int R1 = ( a + b ) * c / d ;


cout << '(a + b) * c / d ' << 'dáva =' << R1 << endl ;

int R2 = a - b * ( d + a ) + c ;

cout << 'a - b (d + a) + c' << 'dáva =' << R2 << endl ;

int R3 = b - d + c * a ;

cout << 'b - d + c * a ' << 'dáva =' << R3 << endl ;

int R4 = d + ( a * b ) / a ;

cout << 'd + (a * b) / a ' << 'dáva =' << R4 << endl ;

vrátiť 0 ;

}

Výkon:

Nasleduje výsledok výpočtu vyššie uvedených výrazov. Tento výsledok dostaneme, pretože operátory vo výraze majú na ne aplikovanú prioritu operátorov:

Príklad 4:

Premenné „a1“, „b1“, „c1“, „d1“, „e1“ a „f1“ tu inicializujeme celočíselnými hodnotami „64“, „90“, „11“, „27“, „34“ a „98“. „int vysledok1“ tu inicializujeme výrazom „a1 + b1 – c1) * d1 / f1“ a výsledok sa uloží do premennej „vysledok1“. Tu sa najskôr riešia zátvorky. Potom sa postupne vypočítajú zostávajúce operácie. Potom vytlačíme „výsledok1“. Rovnakým spôsobom počítame výrazy a ukladáme ich do rôznych premenných. Potom vytlačíme všetky výsledky oddelene a ukážeme, ako funguje priorita operátorov.

Kód 4:

#include

použitím menný priestor std ;

int Hlavná ( ) {

int a1 = 64 ;
int b1 = 90 ;
int c1 = jedenásť ;
int d1 = 27 ;
int e1 = 3. 4 ;
int f1 = 98 ;
int výsledok1 = ( a1 + b1 - c1 ) * d1 / f1 ;


cout << 'Výsledok 1 je' << výsledok1 << endl ;

int výsledok2 = a1 + ( f1 * b1 ) / e1 ;

cout << 'Výsledok 2 je' << výsledok2 << endl ;

int výsledok3 = e1 + d1 + a1 - c1 * b1 / a1 ;

cout << 'Výsledok 3 je' << výsledok3 << endl ;

int výsledok4 = a1 - f1 + ( b1 - d1 ) * c1 ;

cout << 'Výsledok 4 je' << výsledok4 << endl ;

int výsledok5 = ( f1 + ( a1 * ( b1 + a1 ) - f1 ) * a1 + e1 ) ;

cout << 'Výsledok 5 je' << výsledok5 << endl ;

vrátiť 0 ;

}

Výkon:

Tu je vykreslený výstup daného kódu, ktorý zobrazuje výsledok všetkých výrazov, ktoré sme predtým zadali. Všetky výrazy sa počítajú podľa pravidla priority poradia.

Záver

Pozreli sme sa na „prednosť C++“, v ktorej sme hlboko študovali poradie operátorov, v ktorých sa počítajú v programovaní C++. Ukázali sme tiež poradie operátorov vo forme tabuľky a potom sme vykonali početné príklady, v ktorých sme sa naučili, ako boli výrazy riešené podľa poradia poradia v programovaní v C++.