Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> C Taal

While vs. Do-While lussen: Duidelijke vergelijking met praktische voorbeelden

Wat zijn lussen?

Een lus voert een reeks statements herhaaldelijk uit totdat de opgegeven conditie false wordt. Een lus bestaat uit twee delen: een lusbody en een controlestatement. Het controlestatement is een combinatie van voorwaarden die de lusbody sturen om uit te voeren totdat de gespecificeerde conditie false wordt. Het doel van de lus is om dezelfde code een aantal keren te herhalen.

Wat is een While-lus?

Een while-lus is de meest eenvoudige lusstructuur. Het is een entry-controlled lus. In een while-lus wordt een condië geëvalueerd vóór de verwerking van de lusbody. Als de conditie true is, dan en alleen dan wordt de lusbody uitgevoerd.

Na uitvoering van de lusbody keert de controle terug naar het begin, en wordt de conditie opnieuw gecontroleerd. Als deze true is, wordt hetzelfde proces herhaald tot de conditie false wordt. Zodra de conditie false is, verlaat de controle de lus.

In een while-lus, als de conditie niet true is, wordt de lusbody niet eens één keer uitgevoerd.

Wat is een Do-While-lus?

Een do-while-lus lijkt op de while-lus, behalve dat de conditie altijd na de lusbody wordt geëvalueerd. Het wordt ook een exit-controlled lus genoemd.

In de do-while-lus wordt de lusbody altijd ten minste één keer uitgevoerd. Na uitvoering van de body wordt de conditie gecontroleerd. Als de conditie true is, wordt de lusbody opnieuw uitgevoerd. Anders wordt de controle buiten de lus overgedragen.

BELANGRIJKE VERSCHILLEN:

  • While-lus controleert de conditie eerst en voert dan de statement(s) uit, terwijl do-while de statement(s) ten minste één keer uitvoert, daarna wordt de conditie gecontroleerd.
  • While-lus is entry controlled, do-while is exit controlled.
  • In de while-lus hoeven we geen puntkomma toe te voegen aan het einde van de while-conditie, maar in de do-while-lus moet er een puntkomma aan het einde van de while-conditie.
  • While-lus statement(s) worden nul keer uitgevoerd als de conditie false is, terwijl do-while statement ten minste één keer wordt uitgevoerd.
  • While-lus staat initialisatie van tellervariabele vóór de lusbody toe, do-while staat initialisatie vóór en ná de lusbody toe.

Syntaxis van While-lus

Hier is de syntaxis van een while-lus:

while (conditie) { statements; }

In de while-lus schrijven we een conditie die geëvalueerd moet worden. De statement tussen accolades geeft de uit te voeren code aan.

Syntaxis van Do-While-lus

Hier is de syntaxis van een do-while-lus:

do { statements } while (expressie);

In de do-while-lus schrijven we eerst de statement tussen accolades, wat de uit te voeren code aangeeft. Daarna specificeren we de Java, C, of C++ expressie die geëvalueerd moet worden.

Hoe werkt de While-lus?

De while-lus werkt als volgt:

While vs. Do-While lussen: Duidelijke vergelijking met praktische voorbeelden

Flowchart uitleg:

Stap 1) Start van while-lus

Stap 2) De testexpressie of conditie wordt geëvalueerd

Stap 3) Vervolgens, als de testexpressie true is, voert het programma de body van de do-while-lus uit (hier is een fout in origineel: moet while-lus zijn)

Stap 4) Als de testexpressie false is, wordt het programma buiten de while-lus uitgevoerd

Hoe werkt de Do-While-lus?

De do-while-lus werkt als volgt:

While vs. Do-While lussen: Duidelijke vergelijking met praktische voorbeelden

Flowchart uitleg:

Stap 1) Start de do-while-lus

Stap 2) De body van de do-while-lus wordt uitgevoerd

Stap 3) De testexpressie of conditie wordt geëvalueerd

Stap 4) Als de testexpressie true is, voert de compiler de body van de do-while-lus uit

Stap 5) Vervolgens, als de testexpressie false is, voert de compiler de statements na de lusbody uit

Stap 6) Statements die na de lusbody komen worden uitgevoerd

While-lus voorbeeld in C

Het volgende programma illustreert de while-lus in C programmeren met een voorbeeld:

#include<stdio.h> #include<conio.h> int main() { int num=1; //initialiseren van variabele met waarde 1 while(num<=4) //while-lus met conditie { printf("%d\n",num); num++; //increment operatie } return 0; }

Output:

1 2 3 4

Het bovenstaande programme illustreert het gebruik van een while-lus. In de code printen we een reeks getallen van 1 tot 4 met een while-lus.

We hebben een variabele num geïnitialiseerd met waarde 1. We gaan printen van 1 tot 4. Daarom is de variabele geïnitialiseerd met 1. Als we van 0 willen printen, dan wijzen we 0 toe tijdens initialisatie.

Vervolgens, in de while-lus, hebben we een conditie (num<=4) gegeven, wat betekent dat de lus de body uitvoert tot de waarde van num 4 wordt. Daarna wordt de lus beëindigd, en valt de controle buiten de lus.

In de body van de lus hebben we een printfunctie om ons getal te printen en een incrementoperator om de waarde per uitvoering van de lus te verhogen.

De initiële waarde van num is 1, na uitvoering wordt het 2, en tijdens de volgende uitvoering wordt het 3. Dit proces gaat door tot de waarde 4 wordt, en dan print het de reeks op de console en beëindigt de lus.

Do-While-lus voorbeeld in C

Het volgende programma is een do-while-lus voorbeeld om de tafel van 2 te printen in C:

#include<stdio.h> #include<conio.h> int main() { int num=1; //initialiseren van variabele met waarde 1 do //do-while-lus { printf("%d\n",2*num); num++; //increment operatie } while(num<=4); return 0; }

Output:

2 4 6 8

In het bovenstaande voorbeeld printen we de vermenigvuldigingstafel van 2 met een do-while-lus. Eerst hebben we variabele 'num' geïnitialiseerd met waarde 1. Daarna hebben we een do-while-lus geschreven.

In de lus hebben we een printfunctie die de reeks print door de waarde van num met 2 te vermenigvuldigen. Na elke increment neemt de waarde van num met 1 toe, en wordt het op het scherm geprint.

Initieel is de waarde van num 1. In de body van de lus wordt de printfunctie als volgt uitgevoerd: 2*num waar num=1, dan 2*1=2.

Dus de waarde 2 wordt geprint. Dit gaat door tot de waarde van num 10 wordt. Vervolgens wordt de lus beëindigd, en een statement die onmiddellijk na de lus komt wordt uitgevoerd. In dit geval retourneert het 0.

While vs. Do While

While vs. Do-While lussen: Duidelijke vergelijking met praktische voorbeelden

Hier is een belangrijk verschil tussen While en Do While Lus:

WhileDo While
Controleert de conditie eerst en voert dan statement(s) uitDeze lus voert de statement(s) ten minste één keer uit, daarna wordt de conditie gecontroleerd.
While-lus staat initialisatie van tellervariabelen vóór de lusbody toe.Do-while-lus staat initialisatie van tellervariabelen vóór en ná de lusbody toe.
Het is een entry controlled lus.Het is een exit controlled lus.
We hoeven geen puntkomma toe te voegen aan het einde van een while-conditie.We moeten een puntkomma toevoegen aan het einde van de while-conditie.
In geval van een enkele statement, hoeven we geen haakjes toe te voegen.Haakjes zijn altijd nodig.
In deze lus wordt de conditie aan het begin van de lus vermeld.De lusconditie wordt specificeren nadat de blok is uitgevoerd.
Statement(s) kunnen nul keer uitgevoerd worden als de conditie false is.Statement wordt ten minste één keer uitgevoerd.
Algemeen wordt while-lus geschreven als:Algemeen wordt do-while-lus geschreven als:
while (conditie) { Statements; // lus body }
do{ Statements; //lus body } while (conditie);

Welke moeten we kiezen?

Bij het controleren van een conditie, als de eerste iteratie verplicht is, moeten we de while-lus gebruiken. Het kan ook gebruikt worden als het aantal iteraties onbekend of onzeker is.

De do-while-lus is voornamelijk nodig in het geval waar we de lus minimaal één keer moeten uitvoeren. De do-while-lus is typisch nodig in een menu-gestuurde programmeertaal waar de eindconditie gebaseerd is op de eindgebruiker.

C Taal

  1. DC vs AC Motoren Begrijpen: Belangrijkste Verschillen en Kookgids
  2. C# Expressies, Statements & Blokken: Uitgebreide Gids met Praktische Voorbeelden
  3. C# While en Do-While Loops: Syntaxis, Voorbeelden en Best Practices
  4. C++ while en do-while loops: herhaling in je code beheersen
  5. While en Do-While Lussen in C Beheersen: Praktische Voorbeelden
  6. C++ do‑while Lus: Syntaxis, Praktische Voorbeelden en Geneste Lussen
  7. C++ Struct vs Class: Belangrijkste Verschillen, Syntaxis en Beste Gebruikssituaties
  8. C# Inheritance & Polymorfisme Beheersen: Praktische Codevoorbeelden
  9. C# Queues Beheersen: Enqueue, Dequeue en First-In-First-Out Operaties Uitgelegd
  10. While vs. Do-While lussen: Duidelijke vergelijking met praktische voorbeelden
  11. Java while & do-while lussen beheersen: stap-voor-stap tutorial