C++'da İç İçe Döngüler

C Da Ic Ice Donguler



C++’da kod bloğunu tekrarlamamız gerektiğinde o yerdeki “döngüleri” kullanırız. Bu, aynı kodu tekrar tekrar yazma süremizi azaltır. Bir kod bölümünü tekrarlamak için C++'daki “döngüleri” kullanırız. “Döngüler” yöntemi C++ programlamada oldukça verimli ve zaman kazandıran bir süreçtir. C++ dilinin sağladığı 'for döngüsü', 'while döngüsü', 'do-while döngüsü' ve 'nested döngü' gibi farklı döngü türleri vardır. “İç içe döngü”, iki döngüyü birbirinin içine yerleştirdiğimiz anlamına gelir veya bir döngünün içinde başka bir döngü olduğunu da söyleyebiliriz.

Bu kılavuzda yalnızca C++'daki 'iç içe' döngüleri inceleyeceğiz. Bu “iç içe” döngülerden yararlandığımız kodlar şu şekildedir:







Örnek 1:



C++’da çalışırken başlık dosyasını da dahil etmemiz gerekiyor, dolayısıyla “iostream” başlık dosyasını da buraya ekliyoruz. Başlık dosyaları, kodumuzun içinde bildirilen yöntemleri veya işlevleri kullanabilmemiz için dahil edilmiştir. Bunun altına “std” namespace’ini ekliyoruz ve oraya “main()” metodunu çağırıyoruz.



Daha sonra “for” döngüsünü kullanıyoruz ve içine başka bir “for” döngüsü daha yerleştiriyoruz; buna “iç içe döngü” denir. İlk “for” döngüsünde “int” veri tipinin “a” değişkenini “1” ile başlatıyoruz. Buraya ayrıca “a <= 3” diyen ve ardından “a” değerinde “++a”yı artıran koşul da konulur. Buraya bir miktar metin yazdırmak için “cout”u bu “for” döngüsünün altına yerleştiriyoruz. Bir sonraki “for” döngüsünde “int” veri tipinin “b” değişkenini “1” değeri ile başlatıyoruz. Buraya eklediğimiz koşul “b <= 4” olup o da artırılır. Bu “yuvalanmış”ın altına bir “cout” daha yerleştiriyoruz.





Kod 1:

#include
ad alanı std'sini kullanma;
int ana ( ) {
için ( int a = 1 ; A < = 3 ; ++a ) {
cout << ' For döngüm: ' << A << sonunda;
için ( int b = 1 ; B < = 4 ; ++b ) {
cout << '     İç içe geçmiş döngüm: ' << B << sonunda;
}
}
geri dönmek 0 ;
}



Çıktı:

Verilen “iç içe döngünün” sonucu artık burada işleniyor. Kodda koşulunu “3” olarak ayarladığımızda ilk “cout” ifadesi üç kez, ikinci “cout” ifadesi ise koşulunu “4” olarak ayarladığımızda dört kez karşımıza çıkıyor.

Örnek 2:

“Main()” işlevi çağrılır. Daha sonra “myNewWeek” ve “weekDays” değişkenlerini sırasıyla “2” ve “7” değerleriyle başlatıyoruz. Aşağıda kullanacağımız “nested for döngüsü”, birbirinin içine konumlandırdığımız iki “for” döngüsünden oluşmaktadır. “int” veri tipinin “i” değişkenini başlattığımız ilk “for” döngüsüne “i <= myNewWeek” koşulu ve “i” değerindeki “++i” artışı buraya yerleştiriliyor. “1”. Buraya bir miktar metin yazdırmak için “cout”u bu “for” döngüsünün altına yerleştiriyoruz. Aşağıdaki “for” döngüsünde “int” veri tipinin “j” isimli değişkenini “1” değeriyle başlatıyoruz.

Burada “j <=weekDays” koşulunu ekleyip arttırıyoruz. Bu “iç içe” döngünün altına başka bir “cout” konumlandırılmıştır.

Kod 2:

#include
ad alanı std'sini kullanma;
int ana ( ) {
int benimYeniHaftam = 2 , haftanınGünleri = 7 ;

için ( int ben = 1 ; Ben < = YeniHaftam; ++ben ) {
cout << 'Hafta:' << Ben << sonunda;
için ( int j = 1 ; J < = haftaGünleri; ++j ) {
cout << '    Haftanın günü: ' << J << sonunda;
}
}
geri dönmek 0 ;
}

Çıktı:

Daha önce bahsedilen “iç içe döngü” artık bu şekilde görüntüleniyor. Kod artık ilk 'cout' ifadesinin üç örneğini (koşulu '2' olarak sabitlenmiştir) ve ikinci 'cout' ifadesinin dört örneğini (koşulu '7' olarak sabitlenmiştir) göstermektedir.

Örnek 3:

Burada “@” sembolünü “nested for” döngüsü ile üçgen şeklinde göstermek istiyoruz. Bunun için ilk “for” döngüsünü yerleştirip, “int i” değişkenini “1” değeriyle başlatıp, durumunu “i <= 6” olarak ayarlıyoruz.

Daha sonra “i” değerindeki artışı da uyguluyoruz. Bunun altında “j” değişkenini “1” değeriyle “int” olarak başlatıp, “j <= i” diyen başka bir koşulu yerleştirdiğimiz bir “for” daha var. Bu “j” değişkeninin değeri de burada artırılıyor. Şimdi “@” sembolünün bulunduğu yere “cout”u ekliyoruz. Şimdi bu “@” sembolünü üçgen şeklinde oluşturuyor.

Kod 3:

#include
ad alanı std'sini kullanma;
int ana ( ) {
için ( int ben = 1 ; Ben < = 6 ; i++ ) {
için ( int j = 1 ; J < = ben; j++ ) {
cout << '@' ;
}
cout << sonunda;
}

geri dönmek 0 ;
}

Çıktı:

Bu sonucu, verilen kodda kullandığımız “iç içe döngü” nedeniyle elde ediyoruz. Burada “@” sembolünün üçgen şeklinde göründüğünü görebiliyoruz.

Örnek 4:

“@” sembolünü üçgen şeklinde göstermek için “nested for” döngüsünü kullanmak istiyoruz. Bunu yapmak için ilk “for” döngüsünü konumlandırıyoruz. Daha sonra “int a” değişkenine “1” değerini başlatıp, koşulunu “a <= 8” olarak ayarlıyoruz. Daha sonra bu örnekte “a”nın değerini de arttırıyoruz. Ardından, “b” değişkenini “int” olarak “1” değeriyle ve “b <= a”yı gösteren başka bir koşulla başlattığımız başka bir “for”umuz var. “a”nın değeri de aynı şekilde artırılır. Artık '*' sembolünü yerleştirdiğimiz yere 'cout' eklenmiştir. Bu artık konsolun “*” işaretini üçgen şeklinde görüntülemesine neden oluyor.

Kod 4:

#include
ad alanı std'sini kullanma;
int ana ( ) {
için ( int a = 1 ; A < = 8 ; a++ ) {
için ( int b = 1 ; B < = bir; b++ ) {
cout << '*  ' ;
}
cout << sonunda;
}
geri dönmek 0 ;
}

Çıktı:

Bu sonucu yukarıdaki kodda “iç içe döngü” kullanarak elde ettik. Burada “@” sembolünün üçgen şeklinde düzenlendiğini görebiliyoruz.

Örnek 5:

Şimdi sadece asal sayıyı işlemek istiyoruz. Yani “x” ve “y” değişkenlerini “int” değişkenleri olarak ilan ediyoruz. Daha sonra “nested for” döngüsü dediğimiz iki “for” döngüsünü arka arkaya yerleştiriyoruz. İlk döngü “x” değişkeninin “2” ile başlatılmasından sonra “x <= 50” koşulunu içermektedir. Bu döngüde “x”in değeri üzerinde de artış işlemi gerçekleştiriyoruz.

Daha sonra “y” değişkenine “2” değerini atadıktan sonra “y <= (x/y)” diyen başka bir koşulu eklediğimiz bir döngümüz daha oluyor. Bu döngü içerisinde “y”nin değerini de arttırıyoruz. Bunun altında “!(x%y)” koşulunu kontrol eden “if” ifadesini kullanıyoruz. Eğer burada faktör bulunamazsa “break” ifadesini ekleyip aşağıda eklediğimiz ikinci “if”e doğru ilerlediğimiz için o değeri basmayacaktır. Burada tekrar “y > (x/y)” durumunu kontrol eder. Eğer doğruysa bu değeri yazdırır ve ayrıca “bir asal sayıdır” yazdırır.

Kod 5:

#include
ad alanı std'sini kullanma;
int ana ( ) {
int x, y;
için ( x = 2 ; X < = elli ; x++ ) {
için ( y = 2 ; Ve ( X / Ve ) ) cout << X << '  bir asal sayıdır.' << sonunda;
}
geri dönmek 0 ;
}

Çıktı:

Artık kodumuzda “nested for” döngüsünü uyguladıktan sonra elde ettiğimiz tüm asal sayılar burada işleniyor.

Çözüm

Bu kılavuz tamamen C++'daki iç içe döngüler hakkındadır ve kod bölümünün tekrarını istediğimizde 'iç içe döngüleri' kullandığımızı açıklar. Bu kavramı iyice araştırdık ve kodlarımızdaki “iç içe döngülerden” nasıl yararlanacağımızı öğrendik. Bu kılavuzda “iç içe döngüler”den yararlandığımız birçok örneği açıklamalarıyla birlikte gösterdik ve tüm bu kodların sonuçlarını işledik.