C# do while Döngüsü

  • Konbuyu başlatan Shiva
  • Başlangıç tarihi
  • Cevaplar: 1
  • Görüntüleme: 673

Shiva

Admin
Katılım
31 Tem 2019
Konular
522
Mesajlar
4,089
Çözümler
194
Tepkime puanı
14,529
Konum
Berlin
RC Point
0
do while döngüsü kullanımı; for ve while döngülerinden farklı olarak kontrol işlemini döngünün sonunda yapmaktadır.

Bir do while döngüsü while döngüsüne benzer şekilde çalışır. while kısmındaki şart doğru olduğu sürece do while arasındaki ifadeler yürütülür.

Dikkat edilmesi gereken en önemli nokta ise do while döngüsünde komutlar en az 1 sefer yürütülmektedir.(kontrol sonda olduğu için)

Yazım Kuralı



1
2
3
do {
ifadeler;
} while( şart);
Açıklama: Program yukarıdan aşağı doğru çalıştığı için do komutundan sonraki ifadeleri yürütür. İfadeler yürütüldükten sonra şart kontrol edilir. Şart doğru ise ifadeler yürütülmeye devam eder. şart FALSE olduğunda döngü sonlandırılır.



do while Örnekleri
Örnek: do while örneği ile basit dört işlem yapımı


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
class Program
{
static void Main(string[] args)
{

int s1, s2;
char opt,devam;


do
{
Console.Write("Sayı 1 girin:");
s1 = Convert.ToInt32(Console.ReadLine());
Console.Write("Sayı 1 girin:");
s2 = Convert.ToInt32(Console.ReadLine());

Console.Write("İşlem Seçin(+,-,*,/):");
opt = Convert.ToChar(Console.ReadLine());

switch(opt)
{
case '+':Console.WriteLine("İşlem Sonucu:{0}",s1+s2); break;
case '-': Console.WriteLine("İşlem Sonucu:{0}", s1 - s2); break;
case '*': Console.WriteLine("İşlem Sonucu:{0}", s1 * s2); break;
case '/': Console.WriteLine("İşlem Sonucu:{0}", s1 / s2); break;
default:Console.WriteLine("Hatalı işlem"); break;
}

Console.Write("Devam için E/e");
devam= Convert.ToChar(Console.ReadLine());

} while (devam == 'E' || devam == 'e') ;

Console.ReadLine();
}
}


Örnek: 0 -100 arasındaki sayıları do while ile yazdırma


1
2
3
4
5
6
7
8
9
10
11
int toplam = 0;
int sayac = 0;

do
{
sayac++;
toplam += sayac;
}
while (sayac < 100);

Console.WriteLine("Toplam: " + toplam.ToString() + ",Sayaç: " + sayac.ToString());


Örnek: 0-10 arasında rastgele sayı üretip, üretilen sayı 3 olmadığı sürece üretilen sayıyı ekrana yazdıran program


1
2
3
4
5
6
7
8
9
Random rnd = new Random();
int sayi;
do
{
sayi=rnd.Next(0,10);
Console.Write("{0} ",sayi); // sayi+" "
}
while(sayi!=3);
Console.ReadKey();


Örnek: 1 ile 100 arasında tutulan rastgele sayıyı bulan program


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Random r = new Random();
int rs = 0;
int s;
rs = r.Next(1, 101);
do
{
Console.Write("Sayı Giriniz: ");
s = int.Parse(Console.ReadLine());

if (s < rs)
Console.WriteLine("Büyük sayı giriniz...");
else if (s > rs)
Console.WriteLine("Küçük sayı giriniz...");
else
Console.WriteLine("Tebrikler bildiniz...");
}
while (s != rs);
Console.ReadKey();


Örnek: 0 girene kadar girilen sayıları toplayan program



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Program
{
static void Main(string[] args)
{
int sayi,sonuc=0;
do
{
Console.Write("Bir sayı girin: ");
sayi = Convert.ToInt32(Console.ReadLine());
sonuc += sayi;
} while (sayi!=0);

Console.WriteLine("Girdiğin sayıların toplamı:{0}", sonuc);

Console.ReadLine();
}
}
Örnek: Kullanıcı tarafından girilen sayının faktöriyelini hesaplayan program


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class Program
{
static void Main(string[] args)
{
int sayi,sonuc=1;
Console.Write("Bir sayı girin: ");
sayi = Convert.ToInt32(Console.ReadLine());
do
{
sonuc *= sayi;
sayi--;
} while (sayi > 0);

Console.WriteLine("Girdiğin sayıların toplamı:{0}", sonuc);

Console.ReadLine();
}
}
 
Üst