Erinevus if-else ja vahetamise vahel

Autor: Laura McKinney
Loomise Kuupäev: 3 Aprill 2021
Värskenduse Kuupäev: 5 Mai 2024
Anonim
My job is to observe the forest and something strange is happening here.
Videot: My job is to observe the forest and something strange is happening here.

Sisu


Nii “If-else” kui ka “switch” on mõlemad valikuavaldused. Valikuväljavõtted viivad programmi voo konkreetsesse avalduste plokki vastavalt sellele, kas tingimus on tõene või vale. Põhimõtteline erinevus if-else ja switch-lausete vahel on see, et if-else-lause "valib avalduste täitmise, mis põhineb avalduse if-lausetes hinnangu alusel". Lülituslaused „valivad väljavõtte täitmise sageli klaviatuuri käskluse põhjal”.

  1. Võrdlusdiagramm
  2. Definitsioon
  3. Peamised erinevused
  4. Järeldus

Võrdlusdiagramm

Võrdluse aluskui-veellüliti
PõhilineMilline avaldus täidetakse, sõltub avalduse väljundist if-lause sees.Milline avaldus täidetakse, otsustab kasutaja.
Väljendusif-else avaldus kasutab mitme valiku jaoks mitut avaldust.switch-avaldus kasutab mitme valiku jaoks ühte avaldist.
Testimineif-else avalduse test nii võrdsuse kui ka loogilise väljenduse jaoks.lülitage avalduse test ainult võrdsuse tagamiseks.
Hindaminekui avalduses hinnatakse täisarvu, märki, osutit või ujukoma tüüpi või loogilist tüüpi.switch lause hindab ainult tähemärki või täisarvu.
Täitmise järjestusKas siis, kui avaldus täidetakse või mitte.switch avaldus täidab ühte juhtumit teise järel, kuni pausi avaldus ilmub või ümberlülituse avalduse lõpp on saavutatud.
Vaikimisi täitmineKui lauseväliste tingimuste sees on vale, täidetakse vaikimisi teine ​​lause, kui see on loodud.Kui tingimus lülituslausete sees ei kattu ühegi juhtumiga, siis sellisel juhul täidetakse vaikelaused, kui need luuakse.
RedigeerimineIf-else avalduse muutmine on keeruline, kui kasutatakse pesastatud if-else avaldust.Lülitusjuhtumeid on lihtne redigeerida, kuna need on kergesti äratuntavad.

If-else määratlus

If-else avaldused kuuluvad OOP-s olevatele valikuväljavõtetele. If-else avalduste üldine vorm on järgmine


if (avaldus) {avaldus (ed)} else {avaldus (ed)}

kus märksõnad on „kui” ja „muu” ning avaldused võivad olla ühe väite või lausete ploki kaudu. Lause hindab nullist erineva väärtuse korral tõeseks ja nullhinnangu korral vääraks.
Väljend if-avalduses võib sisaldada täisarvu, märki, osutit, ujukoma või võib see olla tõeväärtus. Muu lause on if-else avalduses valikuline. Kui avaldis vastab tõele, täidetakse avalduse sees olevad avaldused ja kui see tagastab vale, siis muu avalduse sisesed avaldused täidetakse ja juhul, kui muu avaldus pole loodud, siis toimingut ei tehta ja programmi juhtimine hüppab välja. juhul, kui on muu väide.

Võimaldab meil näitega aru saada.

int i = 45, j = 34; if (i == 45 & j == 34) {cout << "i =" <

Lüliti määratlus

Lülitusväljavõtted on valikvastustega avaldused. Lülituse avalduse üldine vorm on järgmine

lüliti (avaldis) {juhtumi konstant1: avaldus (ed); vaheaeg; juhtumi konstant2: avaldus (ed); vaheaeg; juhtumi konstant3: avaldus (ed); vaheaeg; . . vaikimisi avaldus (ed); }

Kui avaldis hindab täisarvu või tähemärgi konstante. Siin väljend hindab ainult võrdsust. Väljendit kontrollitakse juhtumite avaldustes esinevate konstantide suhtes. Kui leitakse vaste, täidetakse selle juhtumiga seotud avaldusi kuni „pausini“. Kuna vaheavaldust pole juhtumiavalduste puhul valikuline kasutada, siis kui katkestuse avaldust pole, ei peatu täitmine vahetusväljavõtte lõpuni.
Lause sisaldab ainult ühte avaldist. Lülitusväljavõte kasutab klaviatuuri käsku sageli ühe juhtumiavalduse hulgast valimiseks.

int c; cout << "vali väärtus vahemikus 1 kuni 3"; cin >> i; lüliti (i) {juhtum 1: cout << "valid tumeda šokolaadi"; vaheaeg; 2. juhtum: cout << "valite kommi"; vaheaeg; 3. juhtum: cout << "valite lollypopi"; vaheaeg; . . vaikimisi tehtud cout << "sa ei vali midagi"; }

Siin otsustatakse, millise juhtumi korral täidetakse „i” väärtus, kui kasutaja annab väärtuseks „i” muu kui 1, 2 või 3, siis täidetakse vaikejuhtum.

  1. Väljend lause sisemuses otsustab, kas täita avaldusi blokeeritud või muu bloki all. Teisest küljest otsustab avaldus lülitusavalduses, millist juhtumit täita.
  2. Teil võib olla mitme valiku avaldus mitme valiku korral. Vaheldumisi on teil valikvastuste jaoks ainult üks avaldis.
  3. If-esle-avaldus kontrollib nii võrdsust kui ka loogilist väljendust. Teisalt lülitage kontroll ainult võrdsuse kontrollimiseks.
  4. Kui lause väidab täisarvu, märgi, osuti või ujukoma tüüpi või loogilist tüüpi. Teisest küljest hindab lülituslause ainult tähemärki või täisarvu andmetüüpi.
  5. Täitmise järjestus on nagu üks avaldus all, kui plokk käivitub, või muu lause all olevad avaldused täidetakse. Teisest küljest otsustab avaldus lülitusavalduses, millise juhtumi täita, ja kui te ei rakenda katkestuslauset pärast iga juhtumit, siis see täidetakse kuni avalduse lõpuni.
  6. Kui väljend osutub valeks, käivitatakse lause muu bloki sees. Kui avaldus lülituslause sees osutub valeks, siis täidetakse vaikeväited.
  7. If-else avaldusi on keeruline redigeerida, kuna on tüütu jälgida, kus parandust vajatakse. Teisest küljest on lülituslauseid lihtne redigeerida, kuna neid on lihtne jälgida.

Järeldus:

Lülitusväljavõtet on lihtne redigeerida, kuna see on loonud erinevate avalduste jaoks eraldi juhtumid, samas kui pestud if-else-avalduste korral on redigeeritavaid avaldusi keeruline tuvastada.