Transcript Matlab 4-5

MATLAB’ de Programlama
IV-V
Hafta 4
Matlab Ders Notları
Disp: Ekrana mesaj veya değer yazdırmak için kullanılan komuttur.
Disp(‘yazdırılacak mesaj’);
Disp(değişken adı);
Örnek:
Girilen iki sayının oranını bulan ve
payda sıfır girildiğinde ekrana “üzgünüm sıfıra bölüm
hatası var” mesajı yazdıran program
clear
N = input(‘payı giriniz: ');
D = input(‘paydayı giriniz: ');
pay
oran
payda
if D==0
Disp(‘üzgünüm, sıfıra bölüm hatası var‘)
else
oran = N/D
end
Hafta 4
MATLAB Ders Notları
Örnek: Girilen ay’a göre gün sayısını hesaplayan
program
clear
ay = input( ' Kaçınçı ayın gün sayısını öğrenmek istiyorsunuz (1-12)= ' );
if ay==1 | ay==3 | ay ==5 | ay==7 | ay==8 | ay==10 | ay==12
disp(‘Bu Ay 31 günden oluşur‘)
elseif ay==2
disp(' Bu Ay 28 günden oluşur ')
else
disp(' Bu Ay 30 günden oluşur ')
end
Hafta 4
MATLAB Ders Notları
Uygulama:
Dışardan girilen bir derse ait ödev, quiz ve 1.vize notlarını alıp ortalamasını
hesaplayan ve harfli sisteme göre GENEL VİZE notunu bulan bir program
yazınız.
Not:
Şart
--------Ortalama >= 90
75 <= Ortalama < 90
60 <= Ortalama < 75
45 <= Ortalama < 60
Diğer
Hafta 4
Harfli Not
-----------A
B
C
D
F
MATLAB Ders Notları
Switch Şartlı Deyimi
Switch (durum)
case (durum1)
işlemler
case (durum2)
işlemler
.
.
otherwise
►isteğe bağlı
end
Hafta 4
MATLAB Ders Notları
Örnek: 1 ile 10 arasında girilen sayıların tek ya da
çift olduğunu ekrana yazdıran programı yazınız
sayi=input(‘1 ile 10 arasında bir sayı giriniz:’);
switch (sayi)
case {1,3,5,7,9}
disp(‘Bu sayı Tektir’)
case {2,4,6,8,10}
disp(‘Bu sayı Çifttir’)
otherwise
disp(‘Sayı 1 ile 10 arasının dışında’)
end
Hafta 4
MATLAB Ders Notları
Uygulama :
Girilen ay numarasına göre, o ayın gün sayısını veren
programı switch komutu kullanarak yazınız.
clear
ay = input('bir ay numarası giriniz (1-12)=');
switch ay
case {1,3,5,7,8,10,12};
disp('Bu Ay 31 günden oluşur')
case {2}
disp('Bu Ay 28 günden oluşur')
case {4,6,8,9,11};
disp('Bu Ay 30 günden oluşur')
end
Hafta 4
MATLAB Ders Notları
FOR DÖNGÜSÜ
Bir çok uygulamada belirli işlemlerin tekrar tekrar gerçekleştirilmesi
gerekir. Programlamada bu işlemler grubunu çok sayıda tekrar etmek
imkanı sağlayan yapılara ÇEVRİM, DÖNGÜ veya LOOP denir.
►Çevrim, bir tekrarlı işlem yapısıdır.

Çevrimdeki işlem sayısını önceden belirleyerek ve bu sayıya ulaşıp
ulaşmadığını bir sayaç ile denetleyerek gerçekleştirilen çevrim
yapıları
 Çevrimin sona ermesini bir koşula bağlı olarak kontrol eden çevrim
yapıları
Hafta 4
MATLAB Ders Notları
for döngüsünün genel yapısı
for döngü değişkeni = başlangıç : bitiş
komutlar
end
Örnek: 1’den 20’ye kadar sayıların toplamını bulan program
clear
toplam = 0 ;
for x = 1:20
toplam = toplam + x ;
end
toplam
Hafta 4
MATLAB Ders Notları
Örnek:1 ile girilen herhangi bir sayı arasındaki sayıların toplamını ve
çarpımını hesaplayan bir program yazınız.
clear
sayi=input(‘lütfen bir sayı giriniz=‘)
toplam=0 ;
carpim=1 ;
for i=1:sayi
toplam=toplam+i ;
carpim=carpim*i ;
end
toplam
carpim
Hafta 4
MATLAB Ders Notları
fprintf Fonksiyonu
Genel kullanımı:
fprintf (‘ekrana basılacak açıklama %f \n’, deger)
Burada
%f : Değerin reel sayı olduğunu gösterir
\n : Bir satır atlatır
deger : Ekrana yazılması istenen sayısal değişkenin adı
Diğer yazım biçimleri:
%g : Tamsayı değeri basar
%e : Üstel değer basar
Hafta 4
MATLAB Ders Notları
Uygulama:
fprintf(‘For döngüsü testi\n');
for i = 4:-1:1
fprintf('For döngüsü testi. i = %g\n',i);
end
fprintf('\n Döngünün sonu.\n');
Hafta 4
MATLAB Ders Notları
While Döngüsü
Önceden belirlenmiş belli bir durum gerçekleşinceye
kadar gereken sayıda tekrar edilen ifadeleri içerir.
Genel Kullanımı:
While durum
ifade_1
ifade_2
ifade_n
end
Hafta 4
MATLAB Ders Notları
Örnek:
a=5
while a<10
a=a+1
end
Uygulama
Ekrana adınızı ve soyadınızı 10 kez yazan bir
programı WHILE döngüsü kullanarak yazınız
a=0
while a<10
a=a+1;
disp(‘Bülent Çakmak')
end
Hafta 4
MATLAB Ders Notları
Break ifadesi
FOR ve WHILE döngülerine ilaveten bir program akışını kontrol
edebilmenin diğer bir yolu break ifadesini kullanmaktır. Break
ifadesini döngü gövdesi içerisinde kullanmak, döngünün durmasını
ve döngüden sonra gelen ilk ifade veya komutun işletilmesini
sağlar.
Örnek:
for j=2:6
if j==4
break
end
end
fprintf(‘j= %g \n”, j)
disp(‘döngü sonlandırıldı’)
Hafta 4
MATLAB Ders Notları
İçiçe FOR döngüleri
clear
Toplam=0
for i = 1:5
Toplma = 0
for j = 1:5
toplam = toplam + j
end
Carpım = toplam * i
end
Hafta 4
MATLAB Ders Notları
Örnek: Çarpım tablosunu veren bir program yazınız
for a=1:10
for b=1:10
carpim=a*b;
fprintf(‘%d * %d = %d\n’, a, b, carpim)
end
end
Hafta 4
MATLAB Ders Notları
İçiçe while döngüsü
i=7;
while i>5
x=input(‘x değerini giriniz=‘);
if x<=0
break
end
while x>1
if mod(x,2)==0
x=x/2;
else
x=3*x+1;
end
end
i=i-2;
end
fprintf(‘Bravo, programı sonuçlandırdınız:%g’, x)
Hafta 4
MATLAB Ders Notları
Uygulamalar
Uygulama 1:
Dışardan girilen girilen iki sayının farkını ve bölümünü hesaplayan bir
MATLAB programı yapınız.
Hafta 4
Matlab Ders Notları
Uygulamalar
Uygulama 2: Kenar Uzunlukları dışardan girilen bir ABC üçgenini
kenarlarına göre inceleyen programın algoritmasını MATLAB’de kodlayınız
A1: Basla
A2: A,B,C değerlerini gir
A3: A=B ise A4’e git değilse A5’e git
A4: B=C ise A6’ya git değilse A8’e git
A5: A=C ise A8’e git değilse A7’e git
A6: ‘Üçgen Eşkenardır’
A7: B=C ise A10’a git, değilse A9’a git
A8: ‘Üçgen İkizkenardır’
A9: ‘Üçgen Çeşitkenardır’
A10: ‘Üçgen İkizkenardır’
A11: Son
Hafta 4
Matlab Ders Notları