cial Icons

Ders5: Döngü yapıları

Döngü yapıları


         Belirli bir koşul gerçekleştiği sürece istenilen işlemleri gerçekleştiren yapıları döngü olarak adlandırıyoruz. Döngü yapısı oluşturmak için C#’da while, do while ve for döngüleri kullanılmaktadır.  Ancak bu yapılara ek olarak foreach yapısı da bulunmaktadır. Foreach döngü yapısını daha sonraki paylaşımlarımda anlatacağım.

while:

Belirli bir koşul gerçekleştiği sürece blok içerisindeki işlemleri gerçekleştiren döngü yapısıdır.
            while (koşul)
            {
                deyim1;
                deyim2;
                .
                .
                .
            }

En basit örnekten başlarsak;
0’dan 5’e kadar sayıları sıralayan program
            int i=0;
            while (i<5)
            {
                i++;
                Console.WriteLine( i);

               
            }

do while:

yukarıda anlattığım while döngüsünden farkı yapılmasını istediğimiz deyimleri koşul ifadesinden önce yazıyoruz. Yani koşula bakılmaksızın deyimlerimizin en 1 kere çalışması sağlanacaktır.
            do
            {
                deyim1;
                deyim2;
                .
                .

            } while (ifade);

Ufak bir örnek de do while döngüsü için verelim.

Bu örneğimiz:




 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
            //ŞİFRE DOĞRU GİRİLMEDİĞİ SÜRECE ŞİFRE İSTEYEN ANCAK 3. DENEMEDEN SONRA UYARI VEREN PROGRAM
            int sifre;
            int i=9999; // BİR ŞİFRE BELİRLİYORUZ.
            int b = 0;
            
            
                do
                {
                    
                    Console.WriteLine("sifreyi giriniz: ");
                    sifre = int.Parse(Console.ReadLine());
                    b++;
                } while (i != sifre && b<3);



            if (b < 3)
            {
                Console.WriteLine("hosgeldiniz");
            }
            else
                Console.WriteLine("baskasının hesabına girmeye calısma");

            

            Console.ReadKey();

for:

for döngüsü özellikle while döngülerinden farklı olarak döngü sayısının önceden bilindiği durumlarda tercih edilmektedir.

for yapısı:
for (int i = ilk değer; i < döngü adedi veya uzunluk; i++(artış değeri))
    {
       ifade1;
       ifade2;
       .
       .
    }


while ve for döngülerinin aynı işlemi gerçekleştirdiği basit bir program yazalım.



 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
            //BAŞLANGIÇ DEĞERİ, BİTİŞ DEĞERİ VE ARTIŞ DEĞERİ İSTENDİKTEN SONRA BU ARALIKTAKİ SAYILARI SIRALAYAN PROGRAM
            Console.WriteLine("baslangıc degeri: ");
            int baslangıc = int.Parse(Console.ReadLine());
            Console.WriteLine("artıs degeri: ");
            int artıs = int.Parse(Console.ReadLine());
            Console.WriteLine("bitis degeri: ");
            int bitis = int.Parse(Console.ReadLine());

            while (baslangıc < bitis)
            {
                baslangıc += artıs;
                Console.WriteLine(baslangıc);
            }
                Console.ReadKey();

for döngü yapısı kullanarak aynı programı yazmak istersek:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
            //BAŞLANGIÇ DEĞERİ, BİTİŞ DEĞERİ VE ARTIŞ DEĞERİ İSTENDİKTEN SONRA BU ARALIKTAKİ SAYILARI SIRALAYAN PROGRAM
            Console.WriteLine("baslangıc degeri: ");
            int baslangıc = int.Parse(Console.ReadLine());
            Console.WriteLine("artıs degeri: ");
            int artıs = int.Parse(Console.ReadLine());
            Console.WriteLine("bitis degeri: ");
            int bitis = int.Parse(Console.ReadLine());

            for (;  baslangıc < bitis ;)
            {
                baslangıc += artıs;
                Console.WriteLine(baslangıc);
            }
            //DEĞİŞKENLERİ ÖNCEDEN TANIMLAMAYIP FOR İÇERİSİNDE DE BİR DEĞER             ATAYABİLİRİZ.
            /*for (int i = baslangıc; i < bitis ; i+=artıs )
            {
                Console.WriteLine(i);
            }*/
            Console.ReadKey();

Hiç yorum yok :

Yorum Gönder