C++ Döngüler (While, Do While, For)

  • 29
  • (1)
  • (5)
  • 11 Eyl 2024

C++ Dilinde Döngüler

Döngüler bütün programlama dillerinde belli işlemleri, belli koşullara göre, belli sayıda arka arkaya yaptırmaya yarar.

For Döngüsü

for döngüsü yapısı aşağıdaki gibidir.


for (ilk değer; koşul; arttırma işlemi)
{
    komutlar;
}

for döngüsü ile 0'dan 11'e kadar olan sayıları aşağıdaki gibi yazdırabilirsiniz.


#include <iostream>
using namespace std;

int main()
{
	for (int i = 0; i < 11; i++)
	{
		cout << i << "\n";
	}
}

Çıktı şu şekilde olacaktır.

cpp project visual studio c++

i sayacına ilk 0 değeri atanmıştır. i değeri 11'den küçük olduğu sürece döngü dönecektir ve döndüğünde i++ komutu ile değeri 1 artacaktır. Döngünün içerisindeki her adımda i değeri ekrana yazdırılacaktır.

While Döngüsü

while döngü yapısı aşağıdaki gibidir.


while (koşul)
{
    komutlar;
}

Yukarıdaki örneğin aynısını while döngüsü ile şu şekilde yazabilirsiniz.


#include <iostream>
using namespace std;

int main()
{
	int i = 0;
	// i değişkeni 12'den küçük olduğu sürece döngü dönecektir
	while (i < 12)
	{
		cout << i << "\n";
		i++; // i değişkeni 1 arttırılır
	}
}

Programın çıktısı yukarıdaki for döngüsü örneğindeki çıktı ile aynı olacaktır.

Do While Döngüsü

do while döngüsü while döngüsünden farklı olarak, önce içerisindeki komutları çalıştırır. Ardından koşul denetlenir. Koşul doğru ise döngü devam eder.


do
{
    komutlar;
} while (koşul);

do while döngüsü ile aynı örnek şu şekilde kodlanır.


#include <iostream>
using namespace std;

int main()
{
	int i = 0;
	do
	{
		cout << i << "\n";
		i++;
	} while (i < 12);
}

Çıktı yine aynı olacaktır.

cpp project visual studio c++

Break ve Continue Komutları

break komutu döngüleri tamamen bitirmek için kullanılır. continue komutu ise döngünün bir sonraki adımına geçmek için kullanılır.

continue komutu ile yukarıdaki örnekte 3'e tam bölünen sayıları atlayarak ekrana şu şekilde yazdırabilirsiniz.


#include <iostream>
using namespace std;

int main()
{
	int i = 0;
	while (i < 12)
	{
		if (i % 3 == 0)
		{
			i++;
			continue;
		}
		cout << i << "\n";
		i++;
	}
}

% operatörü mod işlemi görür. i % 3 ifadesi i değişkeninin 3'e bölümünden kalanını ifade eder. Eğer o değer 0'a eşit ise i değişken sayacı 1 arttırılır ve ekrana yazı yazdırılmadan continue ile sonraki adıma geçilir.

cpp project visual studio c++

Eğer continue komutundan önce i++ ile arttırma yapılmazsa, hiçbir zaman yapılamayacağı yani i değişmeden tekrar aynı döngüde kalacağı için, sonsuz döngü oluşur ve program kilitlenir.

break komutu ile döngüyü tamamen bitiren bir örneği aşağıdaki şekilde uygulayabilirsiniz. Döngü sayacı 9 a eşit olduğunda döngünün bitirileceği örnek şöyle olur.


#include <iostream>
using namespace std;

int main()
{
	int i = 0;
	while (i < 12)
	{
		if (i == 7)
		{
			break;
		}
		cout << i << "\n";
		i++;
	}
}

Programın çıktısı aşağıdaki şekilde olacaktır.

cpp project visual studio c++

İç İçe Döngüler

Döngü içerisinde döngü çalıştırmak istenildiğinde iki adet sayaç değişkeni tanımlanmalıdır.


#include <iostream>
#include <locale.h>
using namespace std;

int main()
{
	setlocale(LC_ALL, "Turkish");
	int i = 0, j = 0;
	while (i < 4)
	{
		j = 0; // her i döngüsünde j sıfırlanmalıdır
		while (j < 3)
		{
			cout << "i: " << i << " j: " << j << " -> i x j = " << (i * j) << "\n";
			j++;
		}
		i++;
	}
}
İlişkili İçerikler

C++ ile switch case koşullarının nasıl kullanıldığını bu içerikte inceleyip uygulayabilirsiniz.

Bu içerikte C++ ile dört işlem, karekök, yuvarlama, üslü sayı hesaplama ve mod işlemlerinin nasıl yapıldığını inceleyip uygulayabilirsiniz.

Paylaşın
Etiket Bulutu