Erinevus C-silmuse while ja do-while vahel

Peamised erinevused C-i while ja do-while tsรผkli vahel

  • Kui silmus kontrollib esmalt tingimust ja seejรคrel tรคidab avalduse(d), samas kui tsรผkkel tรคidab lause(d) vรคhemalt korra, siis tingimust kontrollitakse.
  • Kuigi silmus on sisenemise kontrollitav ahel, samas kui do while on vรคljumise kontrollitav ahel.
  • While-tsรผklis ei pea me lisama semikoolonit a while-tingimuse lรตppu, kuid me peame lisama semikoolonit tsรผkli do-while lรตppu.
  • Kui tsรผklilause(d) tรคidetakse null korda, kui tingimus on vรครคr, samas kui lause do-while kรคivitatakse vรคhemalt รผks kord.
  • While loop vรตimaldab initsialiseerida loenduri muutuja enne tsรผkli pรตhiosa kรคivitamist, samas kui do while loop vรตimaldab loenduri muutuja lรคhtestada enne ja pรคrast tsรผkli pรตhiosa kรคivitamist.

Silmuse while ja do-while erinevus

Mis on silmused?

Silmus tรคidab lausete jada mitu korda, kuni รถeldud tingimus muutub vรครคraks. A silmus koosneb kahest osast, silmuse kehast ja juhtlausest. Juhtlause on kombinatsioon mรตnedest tingimustest, mis suunavad tsรผkli pรตhiosa tรคitma, kuni mรครคratud tingimus muutub vรครคraks. Silmuse eesmรคrk on korrata sama koodi mitu korda.

Mis on While Loop?

While-tsรผkkel on kรตige otsekohesem tsรผkkel.ping struktuur. See on sisenemiskontrolliga tsรผkkel. While-tsรผklis hinnatakse tingimust enne tsรผkli sisu tรถรถtlemist. Kui tingimus on tรตene, siis ja ainult siis tรคidetakse tsรผkli sisu.

Pรคrast tsรผkli kehaosa tรคitmist naaseb juhtelement uuesti algusesse ja tingimust kontrollitakse. Kui see on tรตene, teostatakse sama protsessi, kuni tingimus muutub vรครคraks. Kui tingimus muutub valeks, lรคheb juhtimine ahelast vรคlja.

Kui tingimus ei ole tรตene, siis ajatsรผkli jooksul ei kรคivitata tsรผkli keha, isegi mitte รผks kord.

Mis on Do-While Loop?

Do-while tsรผkkel sarnaneb while-tsรผkliga, vรคlja arvatud see, et tingimus tรคidetakse alati pรคrast tsรผkli kehaosa. Seda nimetatakse ka vรคljumisega juhitavaks ahelaks.

Tingimuses do-while tรคidetakse tsรผkli keha alati vรคhemalt รผks kord. Pรคrast keha hukamist kontrollib see seisukorda. Kui tingimus on tรตene, tรคidab see uuesti tsรผkli keha. Vastasel juhul viiakse juhtimine ahelast vรคlja.

Kuigi tsรผkli sรผntaks C-s

Siin on C-programmeerimise tsรผkli While sรผntaks:

while (condition) {
statements;
}

While-tsรผklis peame kirjutama tingimuse, mida tuleb hinnata. Lokkis sulgudes olev avaldus nรคitab kรคivitatavat koodi.

Sรผntaks Do While Loop keeles C

Siin on funktsiooni Do while loop in sรผntaks C programmeerimine:

do {
statements
} while (expression);

Do-while tsรผklis peame esmalt kirjutama kรคsksulgude sisse lause, mis nรคitab kรคivitatavat koodi. Pรคrast seda peame mainima Java, C vรตi C++ programmi avaldised, mida tuleb hinnata.

Kuidas silmus tรถรถtab?

Kuigi silmus tรถรถtab jรคrgmiselt:

Loop Worki ajal

Vooskeemi selgitus:

Step 1) Kuigi tsรผkli algus

Step 2) Hinnatakse testiavaldist vรตi -tingimust

Step 3) Jรคrgmiseks, kui testavaldis on tรตene, kรคivitab programm do-while tsรผkli keha

Step 4) Kui testavaldis on vรครคr, kรคivitatakse programm vรคljaspool tsรผklit

Kuidas Do-While Loop tรถรถtab?

Silmus Do-while toimib jรคrgmiselt:

Do-While Loop Work

Vooskeemi selgitus:

Step 1) Kรคivitage do-wheel-silmus

Step 2) Kรคivitatakse tsรผkli do-while keha

Step 3) Hinnatakse testiavaldist vรตi -tingimust

Step 4) Kui testavaldis on tรตene, kรคivitab kompilaator do-while tsรผkli keha

Step 5) Jรคrgmiseks, kui testavaldis on vรครคr, tรคidab kompilaator tsรผkli keha jรคrel olevad laused

Step 6) Avaldused, mis tulevad pรคrast tsรผkli keha, tรคidetakse

Kuigi vs Do-While Loop: erinevus nende vahel

Siin on oluline erinevus While ja Do While Loop vahel:

Kui Tee Kuigi
See kontrollib esmalt tingimust ja seejรคrel tรคidab avalduse(d) See tsรผkkel kรคivitab lause(d) vรคhemalt korra, seejรคrel kontrollitakse tingimust.
While loop vรตimaldab loenduri muutujate lรคhtestamist enne tsรผkli pรตhiosa kรคivitamist. Do while loop vรตimaldab loenduri muutujate lรคhtestamist enne ja pรคrast tsรผkli pรตhiosa kรคivitamist.
See on sisenemise kontrollitav ahel. See on vรคljumise juhitav ahel.
Me ei pea lisama semikoolonit aja lรตpu tingimusele. Tingimuse while lรตppu peame lisama semikooloni.
รœhe lause puhul peame lisama sulud. Brackets on alati vaja.
Selles tsรผklis mainitakse tingimust tsรผkli alguses. Silmuse tingimus mรครคratakse pรคrast ploki tรคitmist.
Kui tingimus on vรครคr, saab avalduse(d) tรคita null korda. Avaldus tรคidetakse vรคhemalt รผks kord.
Tavaliselt kirjutatakse silmus jรคrgmiselt:

while (condition) {
Statements; // loop body
}
Tavaliselt tehke seda, kui tsรผkkel on kirjutatud jรคrgmiselt:

do{
Statements; //loop body
} while (condition);

Kuigi silmuse nรคide C-s

Jรคrgmine programm illustreerib C-programmeerimise tsรผklit nรคitega:

#include<stdio.h>
#include<conio.h>
int main()
{
int num=1;	//initializing the variable with value 1
while(num<=4)	//while loop with condition
{
printf("%d\n",num);
num++;		//incrementing operation
}
return 0;
}

Vรคljund:

1
2
3
4

รœlaltoodud programm illustreerib while-tsรผkli kasutamist. รœlaltoodud koodis oleme trรผkkinud numbriseeria 1 kuni 4, kasutades while-tsรผklit.

Oleme lรคhtestanud muutuja nimega num vรครคrtusega 1. Trรผkime 1-st 4-ni. Seega on muutuja lรคhtestatud vรครคrtusega 1. Kui tahame printida nullist, siis mรครคrake lรคhtestamise kรคigus vรครคrtus 0.

Jรคrgmisena esitasime hetketsรผkli jooksul tingimuse (num<=4), mis tรคhendab, et tsรผkkel tรคidab keha, kuni numbri num vรครคrtusest saab 4. Pรคrast seda tsรผkkel lรตpetatakse ja juhtimine jรครคb ahelast vรคljapoole. silmus.

Silmuse pรตhiosas on meil trรผkkimisfunktsioon meie numbri printimiseks ja juurdekasvuoperaator, et suurendada vรครคrtust tsรผkli tรคitmise kohta.

Num algvรครคrtus on 1, pรคrast tรคitmist muutub see 2-ks ja jรคrgmisel tรคitmisel 3-ks. See protsess jรคtkub, kuni vรครคrtuseks saab 4, seejรคrel prindib seeria konsoolile ja lรตpetab silmus.

Tee While Loop nรคide C-s

Jรคrgmine programm on Do-while tsรผkli nรคide numbri 2 tabeli printimiseks C-s:

#include<stdio.h>
#include<conio.h>
int main()
{
int num=1;	//initializing the variable with value 1
do	//do-while loop
{
printf("%d\n",2*num);
num++;		//incrementing operation
} while(num<=4);
return 0;
}

Vรคljund:

2
4
6
8

รœlaltoodud nรคites oleme printinud korrutustabeli 2, kasutades do-while tsรผklit. Esiteks oleme initsialiseerinud muutuja 'num' vรครคrtusega 1. Seejรคrel oleme kirjutanud do-while tsรผkli.

Silmuses on meil printimisfunktsioon, mis prindib seeria, korrutades numbri num vรครคrtuse 2-ga. Pรคrast iga juurdekasvu suureneb numbri vรครคrtus 1 vรตrra ja see trรผkitakse ekraanile.

Algselt on num vรครคrtus 1. Silmuse kehas tรคidetakse printimisfunktsioon jรคrgmiselt: 2*num kus num=1, siis 2*1=2.

Seega prinditakse vรครคrtus 2. See jรคtkub seni, kuni numbri num vรครคrtusest saab 10. Jรคrgmisena tsรผkkel lรตpetatakse ja kรคivitatakse lause, mis asub vahetult pรคrast tsรผklit. Sel juhul tagastab see 0.

Millise peaksime valima?

Tingimuse kontrollimisel, kui esimene iteratsioon on kohustuslik, peame kasutama while-tsรผklit. Seda saab kasutada ka siis, kui iteratsioonide arv on teadmata vรตi ebakindel.

Do while loop nรตuab peamiselt juhul, kui peame tsรผklit vรคhemalt รผhe korra tรคitma. Tee-while tsรผklit on tavaliselt vaja menรผรผpรตhises programmeerimiskeeles, kus lรตpptingimus pรตhineb lรตppkasutajal.

Vรตta see postitus kokku jรคrgmiselt: