MATLAB/Programı Dallandıran İfadeler

Benzer belgeler
MATLAB Yardımcı Ders Notları

ALGORİTMALAR VE PROGRAMLAMA

MATLAB de. Programlama. Kontrol Yapıları. Döngü Yapıları. Doç. Dr. İrfan KAYMAZ Matlab Ders Notları

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

disp VEYA fprintf KOMUTLARIYLA EKRANA MESAJ YAZDIRMA

ÖDEV (Vize Dönemi) CEVAPLAR. 1. Ekrana Merhaba Dünya! yazdıran algoritmanın akış diyagramını çiziniz ve sözde kod olarak yazınız.

MATLAB (MATrix LABoratuary)

MatLab. Mustafa Coşar

YUVARLAMA FONKSİYONLARI

Döngü Komutları. Komutu. while Komutu Diğer Operatörler Bileşik Komut for Komutu. İçiçe Döngüler break ve continue Komutları

Erzurum Teknik Üniversitesi Mühendislik Mimarlık Fakültesi Bilgisayar Programlama Dersi Ödevi Soru

BİLGİSAYAR PROGRAMLAMA DERSİ

Akış Kontrol Mekanizmaları

I=[1,0,0,0;0,1,0,0;0,0,1,0;0,0,0,1] % 4x4 lük birim matris

PROGRAMINIZI ANĠ SONLANDIRMAK ĠSTEDĠĞĠNĠZ YER BĠR DÖNGÜNÜN ĠÇĠ ĠSE NE OLUR?????????

Koşul deyimleri: Koşul deyimleri döngülerle birlikte programcılıkta en çok kullanılan deyimlerdir. Matlab de kullanılan koşul deyimleri;

ALGORİTMA VE PROGRAMLAMA I

MATLAB Yardımcı Ders Notları

Yeni Başlayanlar için MATLAB Yardımcı Ders Notları

İnternet Programcılığı Dersi 2.Dönem Ders Notu

BMT 101 Algoritma ve Programlama I 8. Hafta. Yük. Müh. Köksal GÜNDOĞDU 1

MAK 1005 Bilgisayar Programlamaya Giriş. Fonksiyonlar. Prof. Dr. Necmettin Kaya

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

BMT 101 Algoritma ve Programlama I 7. Hafta. Yük. Müh. Köksal Gündoğdu 1

BM202 SAYISAL ÇÖZÜMLEME

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()

MATLAB Yardımcı Ders Notları

while(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO

BİLGİSAYAR PROGRAMLAMA DERSİ

BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

BİLGİSAYAR PROGRAMLAMA DERSİ

TBP101 (4. Hafta) Alıştırma Soruları ve Cevapları

MATLAB (MATRİX LABORATORY) SAYISAL HESAPLAMA DİLİDİR. MATHWORKS FİRMASI TARAFINDAN GELİŞTİRİLMİŞ OLUP, MATRİS İŞLENMESİNE, FONKSİYONLAR VE VERİ

İÇERİK PROGRAMLAMAYA GİRİŞ ALGORİTMA AKIŞ DİYAGRAMLARI PROGRAMLAMA DİLLERİ JAVA DİLİNİN YAPISI JAVA DA KULLANILAN VERİ TİPLERİ JAVA DA PROGRAM YAZMA

Döngü komutları komutların bir çok kez yeniden yürülmesini. sağlayan, programlamada kullandığımız önemli yapılardan biridir.

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar

PROGRAMLAMA DİLLERİ I

3. KOŞUL YAPILARI 3.1. IF YAPISI 2

MATLAB/Diziler (Karakter Dizileri)

Erzurum Teknik Üniversitesi Mühendislik Mimarlık Fakültesi Bilgisayar Programlama Dersi Final Sınavı Soru Toplam Puanlar

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 9

Pythonda değişkenlerin türlerini tanımlamaya gerek yoktur

MTK467 Nesneye Yönelik Programlama. Hafta 4 - Döngüler Zümra Kavafoğlu

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Soru 1: 3x5 boyutunda s adlı sıfır matrisi oluşturunuz.

PROGRAMLAMA ve YAZILIM. Sayısal Analiz Yrd.Doç.Dr. Zekeriya PARLAK

Javascript Ders Örnekleri -2. Tarayıcı Görüntüsü

BİLGİSAYAR PROGRAMLAMA MATLAB

Fen ve Mühendislik Uygulamalarında MATLAB

Javascript. 1) Notepad++ aşağıdaki kodları yazıp deneme.html olarak kaydedelim. 2) Biraz önceki sayfa sadece html kodların içeriyordu.

SİNOP ÜNİVERSİTESİ MESLEK YÜKSEKOKULU MEKATRONİK PROGRAMI

BİLGİSAYAR PROGRAMLAMA. Algoritma ve Akış Şemaları

BİLGİSAYAR BİLİMİ DERSİ (KUR 1) PYTHON PROGRAMLAMA DİLİ ÇALIŞMA KÂĞIDI - 1

BMT 101 Algoritma ve Programlama I 3. Hafta. Yük. Müh. Köksal GÜNDOĞDU 1

Matlab da Dizi ve Matrisler. Mustafa Coşar

MATLAB/Değişkene Değer Atamak

BMT 101 Algoritma ve Programlama I 3. Hafta (Örnekler) Yük. Müh. Köksal GÜNDOĞDU 1

KONTROL YAPILARI JAVADA UC TURLU KONTROL YAPISI VARDIR BUNLAR İF ELSE İF ELSE İF SWİTCH YAPILARIDIR. IF ELSE YAPISI if (deger) { }else {

Her Select Case bloğu, mutlaka End Select ile bitmek zorundadır.

GÖRÜNTÜ İŞLEME DERS-3

GÖRÜNTÜ İŞLEME DERS-3

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

MATLAB de Programlama & Dosya Yönetimi. EE-346 Hafta 6 Dr. Ayşe DEMİRHAN

KBÜ. TBP101 Programlama Temelleri. Öğr. Gör. Dr. Abdullah ELEN KARABÜK ÜNİVERSİTESİ.

Uygulama 1) Aşağıdaki genel (global) değişken tanımlamalarını VB üzerinde yapınız. Süre 10 dak.

Örnek bir Algoritma. Örneğimiz bir insanın evden çıkıp işe giderken izleyeceği yolu ve işyerine girişinde ilk yapacaklarını tanımlamaktadır.

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ (Algoritma Geliştirmek, Satır Kod)

Fortran da kullanılan giriş çıkış komutları PRINT, WRITE ve READ dir.

Döngüler - Loops 4/9/2010. ENF-102 Jeoloji Giriş. Sayaç kontrollü bir döngüdeki temel öğeler. Sayaç (counter) Kontrollü Döngüler.

8- Sistem tarihinden gün değerini alarak çift veya tek sayı olup arasındaki sayılardan tek olanları yeşil çift olanları kırmızı

Programlama Temelleri Örnek Sorular

ALGORİTMA VE PROGRAMLAMA I

Algoritmalar ve Programlama. Algoritma

ALGORİTMA ÖRNEKLERİ ve YAZILIYA HAZIRLIK SORULARI

ALGORİTMA NEDİR? (Adım adım işlem basamaklarının yazılmasıdır.)


YZM 2105 Nesneye Yönelik Programlama

İNTERNET PROGRAMCILIĞI DERSİ ÇALIŞMA SORULARI

BİL-142 Bilgisayar Programlama II

Temel Bilgisayar Bilimleri Ders Notu #4-1. kısım

pfrintf fonksiyonu: Çıkışın formatlı olması ve bunun bir dosyaya yazdırılması durumlarında kullanılır. fprintf fonksiyonunun genel yazım biçimi,

Program akıģı sırasında belirtilen satır numaralı yere gitmek için kullanılır. Genel formu: [<satır numarası>] GOTO <satır numarası 1> GOTO n

k ise bir gerçek sayı olsun. Buna göre aşağıdaki işlemler Matlab da yapılabilir.

ALGORİTMA VE PROGRAMLAMA I

ALGORİTMA (ALGORITHM) M.İLKUÇAR -

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

HSancak Nesne Tabanlı Programlama I Ders Notları

Döngü ve Koşul Deyimleri

Bilgisayar Programlama

Matris İşlemleri Uygulaması

-A Grubu- MKT103 Görsel Programlama 2015/2016 Güz Dönemi Final Sınavı

elemanlarının gezilmesine yönelik bir örnek sunulmuştur, inceleyiniz.

BÖLÜM 6: KARŞILAŞTIRMALI KONTROL YAPILARI

BBS515 Nesneye Yönelik Programlama. Ders 3 Zümra Kavafoğlu

BÖLÜM 2 C PROGRAMLAMADA AKIŞ KONTROLÜ. GOTO: C programında programın herhangi bir yerinden bir yerine şartsız olarak atlanmasını sağlayan komuttur.

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ

Đlişkisel Operatörler

M.ilkucar MAKU MYO 1

Transkript:

MATLAB/Programı Dallandıran İfadeler Dal yapıları, program kodlarından istenilenleri seçen ve onları işleten, istenilen kodları ise değerlirme dışı bırakabilen MATLAB ifadeleridir. if Switch, case try/catch yapıları ile oluşturulur. Bu bölümde try/catch yapısına değinilmeyecektir. 58 MATLAB/if, yapısı if (eğer) yapısı bir koşulun gerçekleşmesi durumunda bir i yaptırmak için sıklıkla kullanılır. Bu ifade, biçimlerindedir. else elseif elseif Örnek: Girilen bir sayının negatif olması durumunda, sayıyı doğal logaritmasıyla değiştiren bir kod düşünelim: Else yapısı kullanılmasaydı a=input(' bir sayi giriniz= '); if a<0 a=log(a); else a=a; a Diğer durumda anlamındadır: Burada, a>0 koşulunu temsil eder. a=input(' bir sayi giriniz= '); if a<0 a=log(a); if a>0 a=a; a 59 1

MATLAB/switch,case yapısı switch (değiştir) if yapısına benzer. Burada daha çok sözel olarak belirtilen durumlara göre yönlirme i yapılır. Bu yapının kullanımı case ile aşağıdaki gibidir; switch durum case durum1 1 case durum2 2 otherwise Kullanımı kişiye bağlıdır. 3 Örnek: gun degiskeninin, is gunu olup olmadığına karar vermek için aşağıdaki kodlar düşünülür;, gun=input('hangi gun=', 's'); switch lower(gun) case {'pazartesi', 'sali','carsamba','persembe','cuma'} disp('iş günü') case {'cumartesi','pazar'} disp('tatil!') 60 MATLAB/switch,case yapısı Kullanıcı tarafından girilen bir a=10.2424542 değişkeninin virgülden sonra 2 mi 3 hane mi yazdırılacağını sorgulayan bir questdlg GUI sini düşünelim: a=10.2424542; buton=questdlg('virgülden sonra kaç hane verilsin?','sonuc,'2 hane', '3 hane','3 hane'); switch buton case {'2 hane'} fprintf('%1.2f',a) case {'3 hane'} fprintf('%1.3f',a), 2 hane düğmesinin tıklanması durumunda, 10.24 sonucu görüntülenir. butonadı = questdlg(soru, başlık, btn1, btn2, seçenek); 61 2

MATLAB/for, döngüsü for, döngüsü bir in birden daha fazla sayıda yaptırılmasında kullanılır. (Örneğin, kök bulma problemlerinde kullanılan iterasyon çözümleri). Kullanımı, for i=1:n (i Tam sayı (integer)) biçimindedir. Örnek: 1 den N ye kadar olan sayıların toplamını yapan bir program düşünelim., N=input('bir sayi giriniz='); say=0; %sayaç for i=1:n say=say+i; %birikimli (kümülatif toplam) say 62 MATLAB/while, döngüsü while, döngüsü, belirli bir durumun gerçekleşmesi durumunda bir in birden daha fazla sayıda yaptırılmasında kullanılır. done=0; while done==0 1. Buradaki, while, döngüsü, done değişkeni ancak ve ancak 0 olduğu zaman çalışacaktır. 2. Bir önceki satırda, done değişkeni 0 olarak atanmış olduğu için while, döngüsü çalışır. Örnek: 1 den N ye kadar olan sayıların toplamını while, döngüsü ile yapan bir program düşünelim., N=input('bir sayi giriniz='); say=0; i=0;done=0; while done==0 i=i+1; %bir önceki örnekte for, döngüsündeki i ye karşılık gelir. if i==n done=1; say=say+i; say i, son sayıya (N ye) ulaştığında, done değişkenine 0 dan farklı bir sayı atanır. Böylece, while ın olduğu satıra gelindiğinde, done 0 olmadığı için while, döngüsü çalışmaz (döngü sonlanır). Program, bu döngünün satırının hemen altındaki satırdan e devam eder (burada, say değişkeni command window da yazdırılır.). 63 3

MATLAB/return ve break for i=1:n break; done=0; while done==0 break; break komutu döngüleri sonlandırır. 64 MATLAB/return ve break for i=1:n return; program biter done=0; while done==0 return; program biter return komutu programı sonlandırır. 65 4

MATLAB/Uygulama-5 Klavyeden girilen iki sayının toplamının bulunması ve ekrana virgülden sonra 3 hane olarak toplam inin sonucu bulunmuştur şeklinde yazdırılması. % iki sayinin toplaminin bulunmasi. A=input('birinci sayiyi giriniz= '); B=input('ikinci sayiyi giriniz= '); toplam=a+b; fprintf('toplam isleminin sonucu %1.3f bulunmustur \n',toplam) 66 MATLAB/Uygulama-6 Klavyeden girilen N sayısına göre faktöriyel değerini hesaplanması ve virgülden sonra 3 hane olarak sonucu bulunmuştur şeklinde yazdırılması., N=input('bir sayi giriniz='); faktoriyel=1; %sayac for i=1:n faktoriyel=faktoriyel*i; faktoriyel fprintf(' sonucu %d bulunmuştur \n',faktoriyel) 67 5

MATLAB/Uygulama-7 Klavyeden girilen N sayısına göre; 1 den N e kadar tamsayıların toplamı 1 den N e kadar tek tamsayıların toplamı 1 den N e kadar çift tamsayıların toplamını veren programı yazınız. % 1 den N e kadar tamsayilarin toplami (T1) % 1 den N e kadar tek tamsayilarin toplami (T2) % 1 den N e kadar cift tamsayilarin toplamini veren programi yaziniz.(t3) N=input('N sinir deðerini giriniz= '); T1=0;T2=0;T3=0; for i=1:n T1=T1+i; for j=1:2:n T2=T2+j; for k=2:2:n T3=T3+k; fprintf('1 den %d e kadar tamsayilarin toplami= %d \n',n,t1) fprintf('1 den %d e kadar tek tamsayilarintoplami= %d \n',n,t2) fprintf('1 den %d e kadar çift tamsayilarintoplami= %d \n',n,t3) 68 MATLAB/Uygulama-8 Bir metin içinde kaç tane a harfi olduğunu bulan programın yazılması. a=metin icerisinde kac tane a var a='metin icerisinde kac tane a var'; s=0; for i=1:1:length(a) if a(i)=='a' s=s+1; s 69 6

MATLAB/Uygulama-9 input fonksiyonu ve for döngüsü kullanılarak A matrisi elemanlarını oluşturunuz. m=input('a matrisinin satir sayisini giriniz= '); n=input('a matrisinin sutun sayisini giriniz= '); for i=1:m for j=1:n fprintf('a matrisinin %d,%d.ci elemanini giriniz:',i,j) A(i,j)=input(''); A 70 MATLAB/Uygulama-10 1 ve 2. noktanın X ve Y koordinatlarının girilmesinden sonra, (1-2) açıklıklık açısının kaçıncı bölgeye düştüğünü belirleyen, ilgili bölgeyi bir msgbox kutusunda yazdıran bir program yazınız. X1=input('X1=');Y1=input('Y1='); X2=input('X2=');Y2=input('Y2='); DX=X2-X1;DY=Y2-Y1; if (DX>0) & (DY>0) a='aci 1. bolgede'; if (DX<0) & (DY>0) a='aci 2.bolgede'; if (DX<0) & (DY<0) a='aci 3.bolgede'; if (DX>0) & (DY<0) a='aci 4.bolgede'; msgbox(a,'bolge?') 71 7

MATLAB/Uygulama-11 1 ve 2. noktanın X ve Y koordinatlarının girilmesinden sonra, (1-2) açıklıklık açısını hesaplayan bir program yazınız. Dış koşul X1=input('X1=');Y1=input('Y1='); X2=input('X2=');Y2=input('Y2='); DX=X2-X1;DY=Y2-Y1; if (DX~=0)&(DY~=0),a=atan(DY/DX);a=a*200/pi; if (DX>0)&(DY>0),a=a; if (DX<0)&(DY>0),a=a+200; if (DX<0)&(DY<0),a=a+200; if (DX>0)&(DY<0),a=a+400; if (DX==0)&(DY>0),a=100; if (DX==0)&(DY<0),a=300; if (DX>=0)&(DY==0),a=0; if (DX<0)&(DY==0),a=200; a %veya output a, aşağıdaki biçimde yazdırılabilir. fprintf('(1-2) aciklik acisi= %1.5f grad \n',a) 72 MATLAB/Uygulama-12 1 ve 2. noktanın X ve Y koordinatlarının girilmesinden sonra, (1-2) açıklıklık açısını ve (1-2) kenar uzunluğunu hesaplayan bir program yazınız. X1=input('X1=');Y1=input('Y1='); X2=input('X2=');Y2=input('Y2='); DX=X2-X1;DY=Y2-Y1; Dış koşul if (DX~=0)&(DY~=0),a=atan(DY/DX);a=a*200/pi; if (DX>0)&(DY>0),a=a; if (DX<0)&(DY>0),a=a+200; if (DX<0)&(DY<0),a=a+200; if (DX>0)&(DY<0),a=a+400; if (DX==0)&(DY>0),a=100; if (DX==0)&(DY<0),a=300; if (DX>=0)&(DY==0),a=0; if (DX<0)&(DY==0),a=200; Sonuçları, ayrıca sprintf fonksiyonu ile bir msgbox a alt alta yazdırınız. S=sqrt(DX^2+DY^2);%kenar fprintf('(1-2) aciklik acisi= %1.5f grad \n,a) fprintf('(1-2) kenar uzunlugu= %1.3f m',s) 73 8

MATLAB/Uygulama-13 Kullanıcıyı,1 i seçmesi durumunda YTÜ web sayfasina, 2 yi seçmesi durumunda istediğiniz bir web sayfasina yönliren bir menü programı yazınız. disp('[1]...ytu web sayfasi') disp('[2] Bahattin Erdogan web sayfasi') a=input('<selection>='); while (a>2) (a<=0) a=input( lütfen seçim numarasını doğru giriniz'); if a==1 web www.yildiz.edu.tr -browser if a==2 web www.yildiz.edu.tr/~berdogan -browser 74 MATLAB/Uygulama-14 n sayıda ölçünün tek tek düzeltmesi ve standart sapması girildiğinde ilgili ölçünün kaba hatalı olup olmadığını belirleyen, kaba hatalı ölçüleri (varsa) yazdıran bir program oluşturunuz., n=input('olcu sayisi=');say=0; for i=1:n v=input('duzeltme='); s=input('standart sapma='); if abs(v)>=(3*s) disp('--------------------------') disp([int2str(i) '. olcu kaba hatali']) disp('--------------------------') say=say+1;kh(say,1)=i; if abs(v)<(3*s) disp('--------------------------') disp([int2str(i) '. olcu normal']) disp('--------------------------') if say==0 disp('kaba hatali olcu yok') if say>0 disp('kaba hatali olan olculer') KH 75 9