Wat is een For Loop?
Dit is een herhalingscontrolestructuur die ons helpt om een gedeelte van C ++ - code een vast aantal keren te herhalen. Een for-lus wordt uitgevoerd op voorwaarde dat de testuitdrukking waar is. De lus beëindigt de uitvoering onmiddellijk wanneer de testuitdrukking onwaar wordt. Dit betekent dat vóór de uitvoering van de lusbody in elke iteratie, de conditie moet worden geëvalueerd. Als de evaluatie een true retourneert, wordt de loop-body uitgevoerd. Als de evaluatie een false retourneert, wordt de uitvoering van de loopbody beëindigd.
In deze C ++ tutorial leer je:
- Wat is een For Loop?
- Hoe werkt for loop?
- Wanneer gebruik je een for-lus?
- Syntaxis van for-lus
- voorbeeld 1
- Voorbeeld 2
Hoe werkt for loop?
De for-lus werkt als volgt:
Stroomschema Toelichting:
- De C ++ - taalcompiler begint met het evalueren van de initialisatie. Dit wordt maar één keer gedaan als de uitvoering begint.
- De testuitdrukking wordt geëvalueerd / uitgevoerd.
- Als de testuitdrukking waar is, wordt de lus-body uitgevoerd en wordt de testuitdrukking bijgewerkt. Als expression false wordt, wordt de for-lus beëindigd.
- Nadat de testuitdrukking is uitgevoerd, wordt de verhoging uitgevoerd om de waarde van de regelvariabele van de lus te verhogen.
- De testuitdrukking wordt opnieuw geëvalueerd en het proces gaat door totdat de uitdrukking onwaar wordt.
- Als de exoression false is, worden de loop body statements overgeslagen.
Opmerking : de testuitdrukking wordt na elke iteratie bijgewerkt. Dit betekent dat in elke iteratie verschillende waarden van de regelvariabele van de lus worden uitgevoerd.
Wanneer gebruik je een for-lus?
De for-lus moet worden gebruikt als:
- Je hebt een vast aantal iteraties.
- U kent het exacte aantal iteraties.
Syntaxis van for-lus
Hier is de syntaxis voor de for-lus:
for ( initialization;condition;increment ) {statement(s);}
Hier is een uitleg van de bovenstaande parameters:
- Initialisatie: dit deel wordt eerst en slechts één keer uitgevoerd. Hier declareert en initialiseert u lusbesturingsvariabelen. De regelvariabelen van de lus kunnen meer dan één zijn, en hun waarden zullen na elke iteratie veranderen. Hun waarden moeten echter worden geëvalueerd voordat een iteratie wordt uitgevoerd.
- Conditie: Dit deel wordt vervolgens uitgevoerd. Om de lus-body uit te voeren, moet deze voorwaarde waar zijn. Als de voorwaarde onwaar is, springt de uitvoering naar instructies onmiddellijk na de lus-body. Als de voorwaarde bij de eerste evaluatie onwaar is, wordt de lus-body nooit uitgevoerd.
- Verhogen: zodra de lusbody is uitgevoerd, springt de besturing naar de verhoging. U kunt dit deel weglaten en in plaats daarvan een puntkomma gebruiken.
- Nogmaals, de toestand wordt geëvalueerd. Als het waar is, wordt de body van de lus uitgevoerd, en dit gaat door. De lus wordt onmiddellijk beëindigd als de voorwaarde onwaar wordt.
voorbeeld 1
#includeusing namespace std;int main() {for (int x=0; x<5; x=x+1) {cout << "X is: " << x << endl;}return 0;}
Uitgang:
Hier is een screenshot van de code:
Code Verklaring:
- Inclusief het iostream-headerbestand in onze code. Hiermee kunnen we lezen van en schrijven naar de console.
- Inclusief de std-naamruimte om zijn klassen en functies te gebruiken zonder deze aan te roepen.
- De main () functie aanroepen waarbinnen de logica van het programma moet worden toegevoegd. De {markeert het begin van de hoofdtekst van de functie main ().
- Een for-lus maken. De initialisatie creëert een integer variabele x en kent deze een waarde van 0 toe. De voorwaarde stelt dat de waarde van x kleiner moet zijn dan 5. De toename verhoogt de waarde van x met 1 na elke iteratie. De {markeert het begin van de body van de for-lus.
- Om de waarde van variabele x af te drukken naast andere tekst op de console. De endl is een C ++ -zoekwoord dat eindregel betekent. De cursor wordt in de volgende iteratie op de volgende regel afgedrukt.
- Einde van het luslichaam.
- De functie main () moet een waarde retourneren als het programma goed werkt.
- Einde van de hoofdtekst van de functie main ().
Voorbeeld 2
#includeusing namespace std;int main(){int x, num, factorial = 1;cout << "Type positive number: ";cin>> num;for (x = 1; x <= num; ++x) {factorial *= x; // factorial = factorial * x;}cout << "Factorial of " << num << " = " << factorial;return 0;}
Uitgang:
Hier is een screenshot van de code:
Code Verklaring:
- Inclusief het iostream-headerbestand in onze code. Hiermee kunnen we lezen van en schrijven naar de console.
- Inclusief de std-naamruimte om zijn klassen en functies te gebruiken zonder deze aan te roepen.
- De main () functie aanroepen waarbinnen de logica van het programma moet worden toegevoegd.
- De {markeert het begin van de hoofdtekst van de functie main ().
- Declaratie van integer-variabelen, x, num en faculteit. De variabele faculteit heeft de waarde 1 gekregen.
- Wat tekst afdrukken op de console.
- De gebruiker wordt gevraagd een waarde in te voeren voor variabele num.
- Een for-lus maken. De initialisatie creëert een integer variabele x en kent deze een waarde van 1 toe. De voorwaarde stelt dat de waarde van x kleiner moet zijn dan of gelijk moet zijn aan de waarde van variabele num. De toename verhoogt de waarde van x met 1 na elke iteratie. De {markeert het begin van de body van de for-lus.
- De waarde van faculteit berekenen met behulp van de formule faculteit = faculteit * x.
- Einde van het luslichaam.
- Om de waarde van variabelen num en faculteit af te drukken naast andere tekst op de console.
- De functie main () moet een waarde retourneren als het programma goed werkt.
- Einde van de hoofdtekst van de functie main ().
Overzicht
- De for-lus herhaalt een sectie van C ++ - code voor een vast aantal keren.
- De for-lus wordt uitgevoerd zolang de testvoorwaarde waar is.
- Het initialisatiegedeelte van de for-lus is voor het declareren en initialiseren van alle regelvariabelen van de lus.
- Het conditiegedeelte van de for-lus moet waar zijn om de lus-body uit te voeren.
- Het incrementgedeelte van de for-lus kan worden vervangen door een puntkomma.