3 Nisan 2012 Salı

C#'da Karar Yapıları

If - Else & Switch - Case

    If - Else Yapısı

     Merhaba arkadaşlar bu yazımda size elimden geldiği şekilde C#'da karar yapıları ile ilgili bilgi vermeye çalışıcam.Karar yapıları programlamanın olmazsa olmazıdır arkadaşlar ve birçok çözümde bize yardım edicek bir kod bloğu şeklide konuşabiliriz.Kolay anlaşılması için hayattan örnek vererek başlamak istiyorum.
     Çoğu kişinin başına gelmiştir sanırsam.Okulda ödev verilmesi ve bunun üzerine düşünmek yapsammı acaba diye düşünceler.Konumuz burda başlıyor yapmak yada yapmamak sonucu bi karara bağlamak.Bu sırada hemen if-else yapısına bakıcak olursak ;

        static void Main(string[] args)
        {
            bool karar = false;
            if (karar == true)
            {
                Console.WriteLine("Ödevimi Yapıcam.");
            }
            else
            {
                Console.WriteLine("Ödevimi Yapmıycam.");
            }
            Console.ReadKey();
        }

     Bool tipinde bir değişken tanımlamışım ve buna false değerini atamışım.Ben false değerini olumsuz , true değerinide olumlu olarak düşünmek istiyorum.
     If yapısına geldiğimde ise if'in çalışma mantalitesinde çok basit bir yapı yatar Eğer şart sağlanıyorsa ilk skopların arasındaki kodlar çalışır ama şart sağlanmıyorsa else'den sonraki skop aralığındaki kodlar çalışır.Daha farklı bir örnekle devam edelim ;

        static void Main(string[] args)
        {
            int Sayi = 51 ;
            if (Sayi < 50)
            {
                Console.WriteLine("Sayı 50'den Küçük.");
            }
            else
            {
                Console.WriteLine("Sayı 50'den Büyük.");
            }
            Console.ReadKey();
        }

     Bu örneğimizde de bir sayı karşılaştırması yaptık.Eğer Sayi değişkenin içindeki değer 50'den küçükse Sayı 50'den Küçük yaz dedik.
     Burda unutulmaması gereken çok önemli bir durum var bu durumda if yapısında bir karşılaştırma işleminden çıkan sonuç true değeri döndürüyorsa ilk skopları false değeri döndürüyorsa else'den sonraki skop ve kodları işleme koyulur.   

             

       Switch - Case Yapısı

     Bu yapıyıda aynı şekilde bir örnekle açıklamak istiyorum.Pazar günleri çoğu kişi için tatil günüdür.Bu boş günü doldurmak için çok fazla olasılık vardır ve birini seçtikten sonra diğerinin pek bir önemi yoktur.Mesela vizyona iyi bir film girmiştir onu izlemeye gidilebilir.Piknikte eğlenceli olabilir yada sevdiğiniz bir grubun konseri vardır... Olasılıklar nerdeyse sınırsızdır.Hadi case yapısı kullanarak bu olasılıkları nasıl kullanıcağımızı görelim.


    class Program
    {
        static void Main(string[] args)
        {
            string olasilik = "KonsereGit";
            switch (olasilik)
            {
                case "SinemayaGit": Console.WriteLine("Sinemaya Git");
                    break;
                case "PiknigeGit": Console.WriteLine("Pikniğe Git");
                    break;
                case "KonsereGit": Console.WriteLine("Pogo Yap");
                    break;
                default:
                    Console.WriteLine("Evde kös kös otur.");
                    break;
            }
            Console.ReadKey();
        }

     Ben konsere gitmeyi tercih ederdim en azından en kötü karardan iyidir yani kararsızlıktan.En kötü kararda Switch-Case yapısında default olarak görebiliriz.Programdaki kodlar işler ve yapımıza ulaşır eğer olasilik degiskenindeki değer hiçbir Case'e uymuyorsa default değer çalışır.
     Switch ve If yapısı karar yapıları altında olmalarına rağmen büyük farklılıklar gösterirler.If de kesin ve net olmayan 50 den küçükse örneğindeki gibi çok fazla değer aralığı vardır ama Case tam tersidir ve nokta atışı yapmamız gereken durumlarda kullanmamız gerekir.
     Bugün ne yapıcaksın ?? Pikniğe gidicem gibi hayatımızla direk olarak bağdaştırabiliriz.

     Okuduğunuz için teşekkür ederim ...




     

Hiç yorum yok:

Yorum Gönder