Hvordan du bruker mens du sløyfe i C ++

Hvordan du bruker mens du sløyfe i C ++
Mens Loop er en av de mest brukte sløyfetypene i C ++ programmeringsspråk på grunn av det brede spekteret av applikasjoner. Mens Loop kan gjenta en viss kode flere ganger til en pauseforhold er oppfylt. Denne artikkelen dekker syntaks og eksempler på å bruke en stund loop i C++.

Innholdsfortegnelse:

  • Hva er mens du er sløyfe i C++
  • Syntaks av mens Loop
  • Hvordan du bruker mens du sløyfe i C++
  • C ++ nestet mens du er sløyfe
  • C ++ uendelig mens du er sløyfe
  • Skrive ut jevn og rare tall med mens løkker i C++
  • Konklusjon

Hva er mens du er sløyfe i C++

En stundsløyfe er en kontrollstruktur som vil fortsette å løpe så lenge tilstanden evalueres til sann, og den vil stoppe når tilstanden blir falsk. Det er nyttig i tilfeller der du vil gjenta en bestemt oppgave til en spesifikk tilstand er oppfylt.

For eksempel, Du kan bruke en stundsløyfe til å skrive ut tall fra 1 til 10 eller beregne et gitt talls factorial.

Syntaks av mens Loop

Den grunnleggende syntaksen på en stundsløyfe i C ++ er som følger:

mens (tilstand)
// kode som skal utføres

Koden i de krøllete seler vil bli utført gjentatte ganger så lenge tilstanden er sann. Tilstanden vil bli sjekket hver gang sløyfen går.

Hvordan du bruker mens du sløyfe i C++

Et av de vanligste eksemplene på mens løkker teller fra et utgangspunkt til et sluttpunkt. For eksempel, Følgende kode vil telle fra 1 til 10:

#inkludere
ved hjelp av navneområdet STD;
int main ()
int i = 1; // initialiser motvariabel til 1
// sløyfe mens motvariabelen er mindre enn eller lik 10
mens jeg <= 10)
cout << i << endl; // output the current value of the counter variable
i ++; // Øk motvariabelen

retur 0;

Denne koden demonstrerer hvordan du bruker en stundsløyfe i C++. Programmet initialiserer en motvariabel Jeg til 1 og utfører deretter en stundsløyfe som vil fortsette å løpe til Jeg blir større enn 10.

Inne i stundsløyfen skrives den nåværende verdien av tellervariabelen ut til konsollen ved hjelp av cout uttalelse, etterfulgt av en linjepause ved hjelp av endl. Tellervariabelen økes deretter med 1 ved bruk av Jeg++ uttalelse.

Løkken fortsetter å utføre til tellervariabelen Jeg når en verdi på 11, på hvilket tidspunkt mens sløyfen blir forlatt og programmet avsluttes med en returverdi på 0.

C ++ nestet mens du er sløyfe

Mens løkker også kan være nestet, Noe som betyr at du kan ha en stundsløyfe inne i en annen mens du er sløyfe. Dette er nyttig i tilfeller der du trenger å utføre en oppgave gjentatte ganger til en spesifikk tilstand er oppfylt, og innenfor den oppgaven må du utføre en annen oppgave gjentatte ganger til en annen tilstand er oppfylt.

I en nestet mens sløyfe blir den ytre sløyfen utført en gang, og deretter vil den indre sløyfen utføres hver gang den ytre sløyfen kjører. Den indre sløyfen utføres fullt ut en gang for hver iterasjon av den ytre sløyfen.

Eksempel

Følgende er eksempelkoden for å bruke nestet mens du er sløyfe i C ++:

#inkludere
ved hjelp av navneområdet STD;
int main ()
int i = 1; // initialiser motvariabel til 1
// sløyfe mens motvariabelen er mindre enn eller lik 3
mens jeg <= 3)
int j = 1; // Initialiser indre motvariabel til 1
// loop mens indre motvariabel er mindre enn eller lik 3
mens (j <= 3)
cout << i << " " << j << "\n"; // output the current values of the counter variables
J ++; // økning indre motvariabel

i ++; // økning ytre motvariabel

retur 0;

I denne koden går den ytre mens sløyfen går så lenge som Jeg blir lik 3, når verdien av Jeg blir større enn 3 sløyfen vil stoppe. Med hver ytre sløyfe -iterasjon, den indre tellervariabelen j initialiseres til 1 og utfører det indre mens du er sløyfe. Denne indre sløyfen vil løpe til verdien av j blir større enn 3.

Inne i den indre sløyfen sender vi ut verdiene til Jeg og j. Etter det økte vi j. Dette fortsetter til den indre sløyfen er utført tre ganger. Hver gang den ytre sløyfen økes, vil den indre sløyfen også bli utført igjen.

Denne prosessen gjentas til den ytre sløyfen er blitt utført tre ganger og begge løkkene er ferdige. Utgangen til denne koden er en tabell med verdier fra 1 1 til 3 3, som vist på bildet nedenfor.

C ++ uendelig mens du er sløyfe

I C ++ er det uendelige mens løkker også er mulig. En uendelig mens Loop kjører kontinuerlig som ingen tilstand definert kan være falsk. Det er bare en sann tilstand, Dette gjør at mens Loop kan kjøre kontinuerlig i et uendelig antall ganger.

For eksempel, Den undergitte sløyfen vil utføre for alltid, og for å stoppe denne sløyfen må vi definere en brudduttalelse på slutten av denne løkken.

mens (sant)
// kode som skal utføres

En uendelig sløyfe kan være nyttig i noen tilfeller, for eksempel i innebygde systemer eller når du venter på brukerinngang.

Eksempel

Nedenfor er eksemplet C ++ -programmet som kjører en uendelig mens Loop i C ++ -kode:

#inkludere
ved hjelp av navneområdet STD;
int main ()
int count = 0;
mens (sant)
cout<<"Infinitive While Loop\n";
telle ++;
if (count> = 10)
gå i stykker;


retur 0;

Den gitte koden lager en uendelig sløyfe som kontinuerlig gir ut "infinitiv mens loop" -strengen til konsollen. Dette er fordi mens Loops tilstand er satt til True, som alltid er ekte sløyfe ikke vil ende.

For å stoppe en uendelig sløyfe, kan vi bruke bruddserklæringen til å forlate sløyfen når en viss tilstand er oppfylt. I programmet ovenfor har vi satt maksimalt antall iterasjoner til 10, som styres av telle variabel og bruddserklæringen.

Ovennevnte kode vil kjøre for uendelige tider, men ved bruk av en bruddserklæring vil stoppe den etter 10 iterasjoner.

Skrive ut jevn og rare tall med mens du sløyfe

Et annet eksempel på mens løkker skriver ut jevn og oddetall. For eksempel, Følgende gitt kode bruker en stundsløyfe i C ++ for å sende ut de jevne tallene fra 2 til 10.

#inkludere
ved hjelp av navneområdet STD;
int main ()
int i = 2; // Initialiser motvariabelen til 2
// sløyfe mens motvariabelen er mindre enn eller lik 10
mens jeg <= 10)
cout << i << endl; // output the current value of the counter variable
i += 2; // Øk motvariabelen med 2

retur 0;

Denne C ++ -koden initialiserer en tellervariabel Jeg til 2 og bruker en stundsløyfe for å gjentatte ganger gi ut verdien av Jeg så lenge det er mindre enn eller lik 10. På hver iterasjon av sløyfen øker den Jeg av 2. Hver gang sløyfen kjører utgangen vil bli skrevet ut på terminalen. Etter at sløyfen er fullført, returnerer programmet 0 for å indikere vellykket utførelse.

Tilsvarende kan vi også skrive ut merkelig tall fra 1 til 9:

#inkludere
ved hjelp av navneområdet STD;
int main ()
int i = 1; // initialiser motvariabel til 1
// sløyfe mens motvariabelen er mindre enn eller lik 9
mens jeg <= 9)
cout << i << endl; // output the current value of the counter variable
i += 2; // Øk motvariabelen med 2

retur 0;

I denne koden vil sløyfetilstanden kjøres til tellervariabelen Jeg er mindre enn eller lik 9. De cout Uttalelse inne i sløyfen sender ut gjeldende verdi av Jeg, Og så Jeg variabelen økes med 2 ved bruk av i += 2 uttalelse. Dette sikrer at bare oddetall skrives ut av loopen.

På slutten av programmet brukes en returerklæring for å indikere at hoved- () -funksjonen er fullført.

Konklusjon

En stundsløyfe er en kontrollstruktur som kjører et program så lenge den definerte tilstanden er sann. Her har vi dekket den grunnleggende syntaksen og eksemplene på å bruke mens løkker i C++. Vi beskriver også hvordan du bruker en stundsløyfe i nestet form og hvordan man kan løpe mens man sløyfe et uendelig antall ganger. For mer informasjon om C ++ mens du er sløyfe, les artikkelen.