C#'da Koşul İfadeleri (IF Deyimi)

IF Deyimi

IF deyimi bir program akışını kontrol etmek için kullanılır. C# dilinin en önemli yapılarından biridir. C# dilinde en genel IF deyimi;

IF(Koşul1)
    Deyim1
Else
    Deyim2

IF deyiminin çalışma prensibi; programın akışı IF deyiminin olduğu satıra geldiğinde IF parantezi içindeki koşul IFadesi çalıştırılır. Bu koşul IFadesi mutlaka true ya da false değeri üretmelidir. Aksi halde program derlenemez. Koşul IFadesinin ürettiği değer true ise deyim1 çalıştırılır, false ise deyim2 çalıştırılır. Örnekle açıklayalım;

namespace çalışma
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 5;
            int b = 7;
            IF (a < b)
                Console.WriteLine("1.deyim");
            else
                Console.WriteLine("2.deyim");
            Console.ReadLine();
        }
    }
}

Çalıştırıldığında 1.deyim diyecektir.

Bazen IF deyimlilerinin else kısmı olmayabilir. Yani bir koşulun sadece doğru gerçekleşmesi durumunda bir ya da daha fazla deyimi çalıştırmak isteyebiliriz. Bu durumda IF deyiminin yapısı aşağıdaki iki şekilde olabilir;

namespace çalışma2
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 5;
            int b = 7;
            IF (a < b)
                a++;
            Console.WriteLine("1.deyim");
            Console.ReadLine();
        }

Ya da

namespace çalışma3
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 5;
            int b = 7;
            IF (a < b)
                Console.WriteLine("1.deyim");
            Console.ReadLine();
        }
    }
}

IF deyiminin diğer bir kullanımı da çoklu koşul şeçme durumlarında görülür. Eğer programımızı birkaç koşula göre yönlendirteceksek else IF bloklarını kullanılırız. Else-IF bloklarının kullanımı bir örnekle gösterelim;

Aşağıdaki örnekte konsoldan girilen numaraya göre notunu gösteren basit bir program;

namespace çalışma4
{
    class Program
    {
        static void Main()
        {
            int not;
            Console.Write("Notunuzu giriniz(0-100); ");
            not = Convert.ToInt32(Console.ReadLine());
            IF (not < 0 || not > 100)
                Console.WriteLine("Yanlış Not Girdiniz");
            else IF (not > 90)
                Console.WriteLine("Notunuz : A");
            else IF (not > 80)
                Console.WriteLine("Notunuz : B");
            else IF (not > 70)
                Console.WriteLine("Notunuz : C");
            else IF (not >= 50)
                Console.WriteLine("Notunuz : D");
            else
                Console.WriteLine("Dersi Geçemediniz");
            Console.ReadLine();
        }
    }
}

İç içe IF deyimleri kullanarak karmaşık yapıdaki seçme işlemleri yapabiliriz. Örnek;

IF(koşul1)
{
       IF(koşul2)
      Deyim1;
       Else
      {
      Deyim2;
      Deyim3;
      }
}
Else
Deyim4;

İç içe geçmiş IF blokları genellikle çok karmaşık olduğu için parantezleri doğru yerlerde kullanmalıyız ki, kodlarımızı inceleyenler hangi parantezinin hangi bloğa ait olduğunu kolaylıkla görsün.

Şimdi son bir örnek verip bu konuyu burada bitirelim. Yararlı olması dileğiyle;

Şimdiki örnek bir bakıma hesap makinesi gibi basit bir program ama ilk başlayanlar için zor olabilir.

Bu örnekte iki sayı alınıp seçilen aritmetik işlemlere göre sonuç ekrana yazdırılacak;

namespace çalışma5
{
    class Program
    {
        static void Main(string[] args)
        {
            int sayi1, sayi2;
            string işlem;
            Console.Write("Sayi1 giriniz : ");
            sayi1 = Convert.ToInt32(Console.ReadLine());
            Console.Write("Sayi2 giriniz : ");
            sayi2 = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Toplama T");
            Console.WriteLine("Çıkarma Ç");
            Console.WriteLine("Çarpma C");
            Console.WriteLine("Bölme B");
            Console.Write("İşlemi Seçiniz: ");
            işlem = Console.ReadLine();
            IF (işlem == "T")
            {
                float sonuc;
                sonuc = sayi1 + sayi2;
            }
            else IF (işlem == "Ç")
            {
                float sonuc;
                sonuc = sayi1 - sayi2;
            }
            else IF (işlem == "C")
            {
                float sonuc;
                sonuc = sayi1 * sayi2;
            }
            else IF (işlem == "B")
            {
                IF (sayi2 == 0)
                {
                    Console.WriteLine("Bölen 0 olamazzz!!!!");
                }
                else
                {
                    float sonuc;
                    sonuc = sayi1 / sayi2;
                }
            }
            Console.ReadLine();
        }
    }
}

Programı derleyip çalıştırdığımızda işlemi seçerken büyük harfle seçmeyi unutmayınız…

Tarih:
Hit: 4366
Yazar: calpazhan



Yorumlar


Siftahı yapan siz olun
Yorum yapabilmek için üye girişi yapmalısınız.