cial Icons

Ders4 : Switch - case yapısı ve dört işlem

Switch - case yapısı ve dört işlem örneği


Switch – case :


Bir önceki paylaşımımda sizlere if koşul ifadelerinin kullanımından bahsetmiştim. Bu yazımda ise    if – elseif - else bloğuyla aynı mantıkla çalışan yazılımcının isteğine göre farklı yerlerde kullanabileceği switch – case koşul ifadesini bir örnekle anlatacağım.

Örneğimizi önce if – elseif – else koşul ifadelerini kullanarak yazacağım daha sonra aynı işlemi gerçekleştiren switch – case ifadesini yazacağım.

Programımızda kullanıcıdan girmesini istediğimiz iki sayının ekranda görülen işlem tiplerinden birini seçmesiyle o işlemi bu sayılara uygulayan bir örnek oluşturacağız.


if – elseif- else kullanı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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
            tekrar: // 1,2,3,4 seçimlerinden farklı bir seçim yapılırsa program buraya tekrar dönecek.
            //yapacağımız işlemlerin sonuçlarını tanımlıyoruz.
            int carpma = 0, toplam = 0, cikarma = 0; float bolme = 0; 

            //bölme işlemi sonucu kesirli sayı çıkma ihtimaline karşılık float tanımlıyoruz.
            Console.WriteLine("1.sayi giriniz: ");
            int a = int.Parse(Console.ReadLine());
            Console.WriteLine("2.sayi giriniz: ");
            int b = int.Parse(Console.ReadLine());

            Console.WriteLine("ISLEM MENUSU");
            Console.WriteLine("1) toplama");
            Console.WriteLine("2) cikarma");
            Console.WriteLine("3) carpma");
            Console.WriteLine("4) bolme");

            Console.WriteLine("seciminiz: ");
            string secim = Console.ReadLine();
           
            if (secim == "1")

            {
                toplam = a + b;
                Console.WriteLine("toplam sonucu: " + toplam);
                 Console.WriteLine("{0} + {1} = {2}", a, b, toplam);  //işlemler bu şekilde şablon yöntemiyle de yazılabilir. 
            }
            else if (secim == "2" && a > b) //pozitif sonuçlar elde etmek amaçlı büyük sayı kontrolü yapıyoruz.
            {
                cikarma = a - b;
                Console.WriteLine("cikarma sonucu: " + cikarma);
            }
            else if (secim == "2" && a < b)
            {
                cikarma = b - a;
                Console.WriteLine("cikarma sonucu: " + cikarma);
            }
            else if (secim == "3")
            {
                carpma = a * b;
                Console.WriteLine("capma sonucu: " + carpma);
            }
            else if (secim == "4" && a > b)
            {
                bolme = (float)a / b;
                Console.WriteLine("bolme sonucu: " + bolme);
            }
            
            else if (secim == "4" && a < b)
            {
                bolme = (float)b / a;
                Console.WriteLine("bolme sonucu: " + bolme);

            }
            else
                goto tekrar;
            Console.ReadKey();




Aynı işlemleri swicth - case kullanarak da yaptıralı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
37
38
39
40
41
42
43
44
45
46
47
            tekrar: 
            int carpma = 0, toplam = 0, cikarma = 0; float bolme = 0;
            //bölme işlemi sonucu kesirli sayı çıkma ihtimaline karşılık float tanımlıyoruz.
            Console.WriteLine("1.sayi giriniz: ");
            int a = int.Parse(Console.ReadLine());
            Console.WriteLine("2.sayi giriniz: ");
            int b = int.Parse(Console.ReadLine());

            Console.WriteLine("ISLEM MENUSU");
            Console.WriteLine("1) toplama");
            Console.WriteLine("2) cikarma");
            Console.WriteLine("3) carpma");
            Console.WriteLine("4) bolme");

            Console.WriteLine("seciminiz: ");
            string secim = Console.ReadLine();
            switch (secim)
            {
                case "1": //EĞER SEÇİM 1 İSE BU BLOĞU UYGULA
                    {
                        toplam = a + b;
                        Console.WriteLine("toplam sonucu: " + toplam);
                        break;//İŞLEMİ YAPIP DİĞER CASE LERE GİRMEDEN PROGRAMI BİTİRMESİ İÇİN YAZILIR
                    }
                case "2"://EĞER SEÇİM 2 İSE BU BLOĞU UYGULA
                    {
                        cikarma = a - b;
                        Console.WriteLine("cikarma sonucu: " + cikarma);
                        break;
                    }
                case "3"://EĞER SEÇİM 3 İSE BU BLOĞU UYGULA
                    {
                        carpma = a * b;
                        Console.WriteLine("capma sonucu: " + carpma);
                        break;
                    }
                case "4"://EĞER SEÇİM 4 İSE BU BLOĞU UYGULA
                    {
                        bolme = (float)a / b;
                                          Console.WriteLine("bolme sonucu: " + bolme);
                        break;
                    }

                default:
                    goto tekrar;// TEKRAKA GİT!
            }
            Console.ReadKey();



Program çıktısı olarak bir bölme işlemi gerçekleştirelim: 




Yukarıda anlattığım şekilde iki koşul ifadesi de aynı mantıkla çalışıyor. Artık programı yazarken hangisi kolayınıza geliyorsa veya hangisinin daha kullanışlı olacağına inanıyorsanız seçmesi sizin. İyi kodlamalar..

1 yorum :

  1. Kolay gelsin. Öncelikle tebrik ediyorum. Bir sorum olacaktı. Çıkartma işlemimizin pozitif çıkmasını sağladık if else ile ama switch case de bunu yapmadık nasıl yapabiliriz? Bir de bölme işlem için soracaktım bunu. Tam sayı olarak nasıl çıkartabiliriz switch case için ?

    YanıtlaSil