Matlab’de Switch – Case Yapısı

Matlab’de switch-case (değiştir-durum) yapısı, Matlab’de İf – Else Yapısı makalemde gördüğümüz if, else ve elseif yapılarının kullanımına bir alternatif getirir. Aslında switch-case ile yapılan herşey if yapılarıyla da yapılır ama switch-case ile yazılan programlar daha okunabilir bir özelliğe sahiptir.

Genel formatı;
Giriş ifadesi, her bir case değeri ile karşılaştırılır. Her bir case değeri ayrı bir satırda olmalıdır.

Kod yapısı aşağıdaki gibidir.

switch (giris_ifadesi)      %skaler veya karakter dizgesi
case ifade1
işlem - 1
case ifade2
işlem - 2
.
.
otherwise
işlem - n
end

Ör #1: Switch-Case kullanarak haftanın kaçıncı günde olduğumuzu yazdığımızda bize hangi günde olduğumuzu ekrana yazan bir program yazalım.

gun = input('Haftanın Kaçıncı Günündeyiz : ');
switch (gun)
case 1
disp('Pazartesi');
case 2
disp('Salı')
case 3
disp('Çarşamba');
case 4
disp('Perşembe');
case 5
disp('Cuma');
case 6
disp('Cumartesi');
case 7
disp('Pazar');
otherwise
disp('Hatalı bir rakam girdiniz.');
end

Ör #2: Switch-Case kullanarak girilen 2 değer arasında işlem yapma.

disp('1. Girilen 2 sayının toplamı.');
disp('2. Girilen 2 sayının farkı.(Mutlak Olarak)');
disp('3. Girilen 2 sayının çarpımı.');
disp('4. Girilen 2 sayından büyük olanı yazdır.');
disp('5. Girilen 2 sayından küçük olanı yazdır.');
i = input('Hangi İşlem Yapılsın : ');
x = input('2 Sayıdan Birincisini Girin : ');
y = input('2 Sayıdan İkincisini Girin : ');
switch (i)
case 1
deger = x+y;
case 2
deger = abs(x-y);
case 3
deger = x*y;
case 4
deger = max(x,y);
case 5
deger = min(x,y);
otherwise
deger = 'Hatalı bir rakam girdiniz.';
end
disp(deger);

Ör #3: Switch-Case kullanarak 1 ile 10 arasında girilen bir sayının tek mi çift mi olduğunu ekrana yazdıralım.

sayi = input('1 ile 10 Arasında Bir Sayı Giriniz : ');
switch (sayi)
case {1,3,5,7,9},
sonuc = 'Sayı Tek.';
case {2,4,6,8,10},
sonuc = 'Sayı Çift.';
otherwise
sonuc = 'Girdiğiniz Sayı 10dan Büyük mü ?';
end
disp(sonuc);

Merhaba! Ben Burak. 2016 yılında Karadeniz Teknik Üniversitesi Harita Mühendisliği Bölümü’nden mezun oldum. Lise yıllarında HTML & CSS‘e, Üniversite yıllarında WordPress ve Matlab‘e adım attım. Lisans tezimi Matlab üzerinden program yazarak teslim ettim. Çeşitli projeler için WordPress tabanlı yazılımlar geliştirdim.

Bir cevap yazın

This site uses Akismet to reduce spam. Learn how your comment data is processed.