Indlejrede løkker i C++

Indlejrede Lokker I C



I C++, når vi skal gentage kodens blok, bruger vi 'løkkerne' på det sted. Dette reducerer vores tid til at skrive den samme kode igen og igen. Vi bruger 'loops' i C++ til at gentage en kodesektion. 'loops'-metoden er en meget effektiv og tidsbesparende proces i C++ programmering. Der er forskellige typer sløjfer leveret af C++-sproget som 'for loop', 'while loop', 'do-while loop' og 'nested loop'. Den 'indlejrede løkke' betyder, at vi placerer to løkker inde i hinanden, eller vi kan også sige, at en løkke indeholder en anden løkke inde i den.

Her vil vi kun udforske de 'indlejrede' loops i C++ i denne guide. Koderne, hvori vi bruger disse 'indlejrede' sløjfer, er som følger:







Eksempel 1:



Vi skal inkludere header-filen, mens vi arbejder i C++, så vi inkluderer 'iostream'-header-filen her. Header-filerne er inkluderet, så vi kan bruge de metoder eller funktioner i vores kode, der er deklareret i dem. Under dette tilføjer vi 'std'-navnerummet og kalder 'main()'-metoden på det sted.



Derefter bruger vi 'for'-løkken, hvori vi også placerer en anden 'for'-løkke; det kaldes 'indlejret for loop'. I den første 'for'-løkke initialiserer vi 'a'-variablen af ​​'int'-datatypen med '1'. Betingelsen er også placeret her, som siger 'a <= 3' og derefter øger '++a' i værdien af ​​'a'. Vi placerer 'cout' under denne 'for'-løkke for at udskrive noget tekst her. I den næste 'for'-løkke initialiserer vi en 'b'-variabel af datatypen 'int' med værdien '1'. Betingelsen, som vi tilføjer her, er 'b <= 4', og den øges også. Vi placerer en anden 'cout' under denne 'indlejret for'.





Kode 1:

#include
bruger navneområde std;
int main ( ) {
til ( int a = 1 ; -en < = 3 ; ++a ) {
cout << 'Mit for loop:' << -en << endl;
til ( int b = 1 ; b < = 4 ; ++b ) {
cout << '     Min indlejrede løkke: ' << b << endl;
}
}
Vend tilbage 0 ;
}



Produktion:

Resultatet af den givne 'indlejrede løkke' er nu gengivet her. Den første 'cout'-sætning vises tre gange, da vi justerede dens tilstand til '3', og den anden 'cout'-sætning vises fire gange, da vi justerede dens tilstand til '4' i koden.

Eksempel 2:

Funktionen 'main()' kaldes. Derefter initialiserer vi variablerne 'myNewWeek' og 'weekDays' med værdierne henholdsvis '2' og '7'. Den 'indlejrede for loop', som vi bruger i det følgende, er sammensat af to 'for' loops, som vi placerer inde i hinanden. 'i <= myNewWeek'-betingelsen og '++i'-stigningen i værdien af ​​'i' placeres her i den første 'for'-løkke, hvor vi initialiserer 'i'-variablen af ​​'int'-datatypen med '1'. Vi placerer 'cout' under denne 'for'-løkke for at udskrive noget tekst her. Vi initialiserer en variabel kaldet 'j' af datatypen 'int' med værdien '1' i den følgende 'for'-løkke.

Her tilføjer vi betingelsen 'j <= weekDays' og øger den. En anden 'cout' er placeret under denne 'indlejrede for'-løkke.

Kode 2:

#include
bruger navneområde std;
int main ( ) {
int myNewWeek = 2 , ugedage = 7 ;

til ( int i = 1 ; jeg < = min NyUge; ++i ) {
cout << 'Ugen er:' << jeg << endl;
til ( int j = 1 ; j < = ugedage; ++j ) {
cout << '    Ugedagen er: ' << j << endl;
}
}
Vend tilbage 0 ;
}

Produktion:

Sådan vises den 'indlejrede sløjfe', som blev nævnt tidligere. Koden viser nu tre forekomster af den første 'cout'-sætning (hvis tilstand er fastsat til '2') og fire forekomster af den anden 'cout'-sætning (hvis tilstand er fastsat til '7').

Eksempel 3:

Her ønsker vi at vise '@'-symbolet i et trekantet mønster med 'indlejret for'-løkken. Til dette placerer vi den første 'for'-løkke og justerer dens tilstand til 'i <= 6' efter initialisering af 'int i'-variablen med værdien '1'.

Derefter anvender vi også stigningen i værdien af ​​'i'. Under dette har vi et andet 'for', hvor vi placerer en anden betingelse, der siger 'j <= i', efter initialisering af 'j'-variablen som 'int' med værdien '1'. Værdien af ​​denne 'j'-variabel øges også her. Nu tilføjer vi 'cout', hvor '@' symbolet er placeret. Nu gengiver dette '@'-symbolet trekantet.

Kode 3:

#include
bruger navneområde std;
int main ( ) {
til ( int i = 1 ; jeg < = 6 ; i++ ) {
til ( int j = 1 ; j < = i; j++ ) {
cout << '@' ;
}
cout << endl;
}

Vend tilbage 0 ;
}

Produktion:

Vi får dette resultat på grund af den 'nested loop', som vi brugte i den medfølgende kode. Her kan vi se, at '@'-symbolet vises i et trekantet mønster.

Eksempel 4:

Vi ønsker at bruge 'indlejret for'-løkken til at vise '@'-symbolet i et trekantmønster. For at gøre dette placerer vi den første 'for'-løkke. Derefter initialiserer vi 'int a'-variablen med værdien '1' og sætter dens betingelse til 'a <= 8'. Dernæst øger vi også værdien af ​​'a' i dette tilfælde. Så har vi en anden 'for', hvor vi initialiserer 'b'-variablen som 'int' med værdien '1' med en anden betingelse, der indikerer 'b <= a'. Værdien af ​​'a' øges ligeledes. 'Cout' tilføjes nu, hvor vi placerer '*'-symbolet. Dette får nu konsollen til at vise '*'-tegnet i et trekantmønster.

Kode 4:

#include
bruger navneområde std;
int main ( ) {
til ( int a = 1 ; -en < = 8 ; a++ ) {
til ( int b = 1 ; b < = a; b++ ) {
cout << '*  ' ;
}
cout << endl;
}
Vend tilbage 0 ;
}

Produktion:

Vi opnåede dette resultat ved at bruge en 'indlejret loop' i den førnævnte kode. Her kan vi observere, at '@'-symbolet er arrangeret i trekant.

Eksempel 5:

Nu ønsker vi kun at gengive primtallet. Så vi erklærer 'x' og 'y' variablerne som 'int' variablerne. Derefter placerer vi to 'for'-løkker, den ene efter den anden, som siges at være den 'indlejrede for'-løkke. Den første løkke indeholder betingelsen, som er 'x <= 50' efter initialisering af 'x'-variablen med '2'. Vi udfører også stigningen på værdien af ​​'x' i denne løkke.

Derefter har vi en anden sløjfe, hvor vi tilføjer en anden betingelse, der siger 'y <= (x/y)' efter at have tildelt en '2' værdi til 'y' variablen. Vi øger også værdien af ​​'y' i denne løkke. Herunder bruger vi 'hvis', som kontrollerer betingelsen '!(x%y)'. Hvis faktoren ikke findes her, vil den ikke udskrive den værdi, da vi tilføjer 'break'-sætningen og bevæger os mod det andet 'hvis', som vi tilføjer i det følgende. Her tjekker den tilstanden igen, som er 'y > (x/y)'. Hvis det er sandt, udskriver den denne værdi og udskriver også 'er et primtal'.

Kode 5:

#include
bruger navneområde std;
int main ( ) {
int x, y;
til ( x = 2 ; x < = halvtreds ; x++ ) {
til ( y = 2 ; og ( x / og ) ) cout << x << ' er et primtal.' << endl;
}
Vend tilbage 0 ;
}

Produktion:

Nu er alle primtallene gengivet her, som vi får efter at have anvendt 'indlejret for'-løkken i vores kode.

Konklusion

Denne vejledning handler om de indlejrede sløjfer i C++ og forklarede, at vi bruger de 'indlejrede sløjfer', når vi vil have gentagelsen af ​​kodens sektion. Vi udforskede dette koncept grundigt og lærte, hvordan man bruger de 'indlejrede loops' i vores koder. Vi demonstrerede flere eksempler, hvor vi brugte de 'indlejrede løkker' sammen med deres forklaringer og gengivet resultaterne af alle disse koder her i denne vejledning.