C# dilinde do-while
döngüsü, bir kod bloğunu en az bir kez çalıştırmak ve ardından belirli bir koşulu kontrol ederek döngüyü tekrarlamak için kullanılır. Bu döngü, koşul kontrolünden önce kodu çalıştırdığı için koşul sağlanmasa bile döngü içindeki kod bir kez çalıştırılır.
1. do-while
Döngüsünün Sözdizimi
do
{
// Çalıştırılacak kodlar
} while (koşul);
koşul
: Boolean bir ifade olmalıdır (true/false).do
: Döngü bloğunun başlangıcını belirtir.while
: Koşulun kontrol edildiği kısımdır. Döngü burada sona erer veya tekrar başlar.
2. do-while
Döngüsünün Temel Özellikleri
do-while
döngüsü, koşul doğru olsun ya da olmasın en az bir kez çalışır.- Döngü, koşul false olduğunda sona erer.
- Kullanıcıdan veri alma, doğrulama işlemleri gibi durumlarda oldukça yaygın kullanılır.
3. Basit Bir do-while
Döngüsü Örneği
Örnek:
int sayi = 1;
do
{
Console.WriteLine($"Sayı: {sayi}");
sayi++;
} while (sayi <= 5);
Çıktı:
Sayı: 1
Sayı: 2
Sayı: 3
Sayı: 4
Sayı: 5
Bu örnekte:
- İlk olarak
sayi
değeri ekrana yazdırılır. - Ardından
sayi++
ile artırılır ve koşul kontrol edilir. - Koşul
sayi <= 5
yanlış olduğunda döngü sona erer.
4. do-while
ve while
Döngüsü Arasındaki Fark
Özellik | do-while Döngüsü | while Döngüsü |
---|---|---|
Koşul Kontrolü | Kod çalıştırıldıktan sonra koşul kontrol edilir. | Kod çalıştırılmadan önce koşul kontrol edilir. |
Minimum Çalışma Sayısı | Kod her zaman en az bir kez çalışır. | Koşul baştan sağlanmazsa kod hiç çalışmayabilir. |
5. Kullanıcıdan Veri Alma Örneği
Kullanıcıdan doğru bir giriş alınana kadar döngü çalıştırılır:
Örnek:
string parola;
do
{
Console.WriteLine("Lütfen parolanızı girin:");
parola = Console.ReadLine();
} while (parola != "1234");
Console.WriteLine("Parola doğru, giriş başarılı!");
Çıktı:
Lütfen parolanızı girin:
abcd
Lütfen parolanızı girin:
1234
Parola doğru, giriş başarılı!
Bu örnekte:
- Kullanıcı doğru parolayı girene kadar döngü çalışır.
- Yanlış parola girilse bile döngü tekrar eder.
6. do-while
Döngüsü ile Menü Yapısı
do-while
döngüsü, menü tabanlı uygulamalarda sıklıkla kullanılır.
Örnek:
int secim;
do
{
Console.WriteLine("1. Toplama");
Console.WriteLine("2. Çıkarma");
Console.WriteLine("3. Çıkış");
Console.Write("Bir seçenek girin: ");
secim = Convert.ToInt32(Console.ReadLine());
switch (secim)
{
case 1:
Console.WriteLine("Toplama seçildi.");
break;
case 2:
Console.WriteLine("Çıkarma seçildi.");
break;
case 3:
Console.WriteLine("Çıkış yapılıyor.");
break;
default:
Console.WriteLine("Geçersiz seçim!");
break;
}
} while (secim != 3);
Çıktı:
1. Toplama
2. Çıkarma
3. Çıkış
Bir seçenek girin: 1
Toplama seçildi.
1. Toplama
2. Çıkarma
3. Çıkış
Bir seçenek girin: 3
Çıkış yapılıyor.
7. Sonsuz Döngü ve break
Kullanımı
Koşul her zaman doğruysa döngü sonsuz çalışır, ancak break
ile döngüden çıkılabilir.
Örnek:
int i = 0;
do
{
Console.WriteLine($"i: {i}");
i++;
if (i == 10)
{
break; // 10 olduğunda döngüden çık
}
} while (true);
Çıktı:
i: 0
i: 1
i: 2
i: 3
i: 4
i: 5
i: 6
i: 7
i: 8
i: 9
8. Matematiksel İşlemler Örneği
Bir sayının faktöriyelini do-while
ile hesaplama:
Örnek:
int sayi = 5;
int faktoryel = 1;
do
{
faktoryel *= sayi;
sayi--;
} while (sayi > 0);
Console.WriteLine($"Faktöriyel: {faktoryel}");
Çıktı:
Faktöriyel: 120
Sonuç
C# dilinde do-while
döngüsü, özellikle kullanıcıdan veri alma, menü yapıları veya en az bir kez çalışması gereken işlemler için kullanışlı bir araçtır. Döngünün en az bir kez çalışması garanti olduğu için, bu tür işlemlerde do-while
döngüsü tercih edilir. Bu döngüyü kullanırken doğru koşulları belirlemek ve gerekirse döngüyü sonlandırmak için break
gibi kontrol yapılarından faydalanabilirsiniz.