Diferență cheie – dacă altfel vs comutați
Există structuri de luare a deciziilor în programare. If else și switch sunt două dintre ele. O expresie constă din valori, operatori, constante etc. If else permite executarea unui bloc de instrucțiuni dacă expresia dată este adevărată sau executarea blocului opțional dacă expresia dată este falsă. Comutatorul este folosit pentru a permite valorii unei variabile sau expresii să modifice fluxul de control al execuției programului printr-o ramură cu mai multe căi. Dacă programatorul dorește să verifice valoarea unei singure variabile, atunci poate folosi instrucțiunea switch. Acest articol discută diferența dintre if else și switch. Diferența esențială dintre if else și switch este că în if else, blocul de execuție se bazează pe evaluarea expresiei din instrucțiunea if, în timp ce în switch, instrucțiunile de executat depind de singura variabilă transmisă acesteia.
Ce ar fi dacă altceva?
Dacă altfel conține două blocuri. Ele sunt dacă și altceva. Blocul if conține expresia de evaluat. Dacă este adevărat, instrucțiunile din blocul if se vor executa. Dacă condiția este falsă, atunci instrucțiunile aparțin blocului else vor fi executate. Limbajele de programare presupun orice valori diferite de zero și non-nule ca fiind adevărate. Zero și nul sunt considerate false. Dacă și else sunt cuvinte cheie. Prin urmare, nu pot fi utilizați ca identificatori.
Figura 01: Program cu instrucțiuni if else
Conform programului de mai sus, numărul este variabil care poate stoca numere întregi. Conține valoarea 5. În blocul if, expresia este verificată. Dacă restul este 0 după împărțirea numărului la zero, ceea ce înseamnă că numărul este par. Dacă restul este 1, atunci numărul este impar. Numărul 5 este impar. Prin urmare, blocul else se va executa.
Ce este comutatorul?
Dacă programatorul dorește să verifice valoarea unei singure variabile, atunci poate folosi comutatorul. Este o declarație de selecție cu variante multiple. Comutatorul poate avea multe declarații de caz. Când variabila este transmisă comutatorului, aceasta este comparată cu valoarea fiecărei instrucțiuni case. Dacă se găsește valoarea corespunzătoare, instrucțiunile cazului respectiv se execută. Acele instrucțiuni se execută până când apare o pauză. Dacă instrucțiunile case nu au instrucțiuni break, atunci execuția are loc până la sfârșitul instrucțiunii switch. Cazul implicit se execută dacă niciunul dintre cazuri nu este adevărat. Valoarea implicită nu necesită o declarație de pauză.
Figura 02: Program cu comutatorul
Conform programului de mai sus, num1 și num2 conțin două valori întregi. Operatorul este un personaj. Se trece la comutator. Se verifică cu toate declarațiile de caz. Operatorul trecut este divizia. Prin urmare, diviziunea este calculată și tipărită. Apoi execuția iese din comutator din cauza instrucțiunii break. Când se ajunge la pauză, controlul este trecut la următoarea linie după comutare. În general, instrucțiunea switch folosește adesea o comandă de la tastatură pentru a alege una dintre declarațiile multiple case.
Care este asemănarea între if else și switch?
Atât if else, cât și switch sunt structuri de luare a deciziilor în programare
Care este diferența dintre dacă else și comutați?
dacă altfel vs comutați |
|
If else este o structură de control care execută un bloc de instrucțiuni dacă condiția este adevărată și execută blocul opțional dacă condiția este falsă. | Instrucțiunea switch este un tip de mecanism de control al selecției utilizat pentru a permite valorii unei variabile sau expresii să modifice fluxul de control al execuției programului printr-o ramură multidirecțională. |
Execuție | |
În if else, fie blocul if, fie blocul else se execută în funcție de expresia evaluată. | Comutatorul execută un caz după altul până când se ajunge la pauză sau până la sfârșitul comutatorului. |
Evaluare | |
Instrucțiunea if evaluează numere întregi, caractere, numere în virgulă mobilă sau tipuri booleene. | Instrucțiunea switch evaluează caractere și numere întregi. |
Execuție implicită | |
Dacă condiția blocului if este falsă, instrucțiunile din blocul else se vor executa. | În comutare, dacă niciuna dintre instrucțiunile case nu se potrivește, instrucțiunile implicite se vor executa. |
testare | |
The if else verificați egalitatea și expresiile logice. | Comutatorul verifică egalitatea. |
Rezumat – if else vs switch
Două structuri de luare a deciziilor în programare sunt dacă altfel și comută. Declarația if else este o instrucțiune condiționată va rula un set de instrucțiuni în funcție de dacă condiția este adevărată sau falsă. Comutatorul poate fi folosit pentru a verifica o singură variabilă. Diferența dintre if else și switch este că if else blocul de execuție bazat pe evaluarea expresiei din instrucțiunea if, în timp ce instrucțiunea switch selectează instrucțiunile de executat în funcție de singura variabilă, ia trecut.