BİLGİSAYAR PROGRAMLAMA DERSİ 4. DERS NOTU Konu: M-dosya yapısı ve Kontrol Yapıları 1.

Slides:



Advertisements
Benzer bir sunumlar
OPERATÖRLER.
Advertisements

MATLAB.
MATLAB Bilgisayar Programlama Yrd.Doç. Dr. Aslıhan KURNUÇ
Bilgisayar Programlama Güz 2011
EKRAN ÇIKTISI.
PHP ile Lab Örnekleri Lab Çalışması.
MATLAB Bilgisayar Programlama Yrd.Doç. Dr. Aslıhan KURNUÇ
Bilgisayar Programlama Güz 2011
JavaScript Birinci Hafta.
Bilgisayar Programlama (Yrd. Doç. Dr. İbrahim ASRİ)
MATLAB.
Ayrık Yapılar Matlab Notları
Makine Müh. & Jeoloji Müh.
Problemi Çözme Adımları
Bölüm 4 Seçme Komutları Koşul İfadesi if Komutu Bileşik Komut
2) Sayısal Hesaplamalarda Gerek Duyulabilecek Matlab İşlemleri
Bölüm 2: Program Denetimi
MATLAB’İN SAYI YUVARLAMA FONKSİYONLARI
SQL de Değişken Tanımlama
Bilgisayar Programlama
MATLAB’ de Programlama
Nesneye Yönelik Programlama
BPR152 ALGORİTMA VE PROGRAMLAMA - II
Operatörler.
Yapısal Program Geliştirme – if, if-else
AKIŞ ŞEMALARI 2.DERS.
Makine Müh. & Jeoloji Müh.
Bilgisayar Programlama (Yrd. Doç. Dr. İbrahim ASRİ)
İNTERNET PROGRAMCILIĞI I BTP 207 Ders 9. Tek değişkende birden fazla bilgi tutulmak istendiğinde kullanılır. Kullanım şekli: var dizi_adı= new Array(eleman1,
Bilgisayar Programlama Güz 2011
4. HAFTA Mart 2010.
Nesneye Yönelik Programlama (2. Sunu). Konsol Üzerinde Türkçe Karakterler Görebilmek İçin…
MATLAB’ de Programlama
MESAJ KUTUSU.
Kontrol Yapıları ve Döngüler
Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi
BM-103 Programlamaya Giriş Güz 2014 (7. Sunu)
a) b) c) d) e) Pi= 4* atan(1) y=Log10 | x | +4 Y= LOG10 (ABS(x))+4
BİL 102 BİLGİSAYAR PROGRAMLAMA
BM-103 Programlamaya Giriş Güz 2014 (4. Sunu)
BM-103 Programlamaya Giriş Güz 2014 (2. Sunu)
BM-103 Programlamaya Giriş Güz 2014 (9. Sunu)
MATLAB’ de Programlama
Bilgisayar Programlama Güz 2011
PROGRAMLAMA 2. Hafta TEMEL KAVRAMLAR.
Algoritmalar ve Programlama I Ders 2: Akış Diyagramları
Bu Günkü Konular If yapısı ve karşılaştırma operatörleri
2. HAFTA 2. Hafta.
BMS-301 Kabuk Programlama Güz 2015 (5. Sunu) (Yrd. Doç. Dr. Deniz Dal)
Döngü Komutları. for deyimi bir alt limitten, bir üst limite kadar programın belirli bir parçasını tekrar eder. for deyiminde sayaç artış oranı da verilmelidir.
BM-103 Programlamaya Giriş Güz 2012 (3. Sunu)
Adım Adım Algoritma.
SAYISAL ANALİZ Doç.Dr. Cüneyt BAYILMIŞ.
5. HAFTA Mart Discussion: comp.soft-sys.matlab An unmoderated newsgroup that focuses on the.
O R T L G İ M A A Ve Akış şemaları.
BİLGİSAYAR PROGRAMLAMA DERSİ
BİLGİSAYAR PROGRAMLAMA DERSİ 7. DERS NOTU Konu: Dosya Yönetim.
Algoritma ve Akış Şemaları
Bilgisayar Programlama BIL 107
BM-103 Programlamaya Giriş Güz 2016 (3. Sunu)
BM-103 Programlamaya Giriş Güz 2016 (5. Sunu)
Algoritmanın Hazırlanması
Bilgisayar Programlamasına ve Veri Analizine Giriş
PROGRAMLAMAYA GİRİŞ FORTRAN 77.
Bilgisayar Programlamasına ve Veri Analizine Giriş - VII
Discussion: comp.soft-sys.matlab
Akis diyagramı Örnekleri
NİŞANTAŞI ÜNİVERSİTESİ
Veri Tabanı Yönetim Sistemleri I
Sunum transkripti:

BİLGİSAYAR PROGRAMLAMA DERSİ 4. DERS NOTU Konu: M-dosya yapısı ve Kontrol Yapıları 1

M-Dosya Yapısı Bir senaryo dosyası (script file) özel bir görevi yerine getirmek için gerekli MATLAB komutlarının saklandığı bir metin programıdır. Başka bir ifadeyle; bir hesaplamayı gerçekleştirmek için yazılacak bir çok komutlar dizisi, komut penceresinden tek tek girmek yerine bir dosyada saklanır daha sonra bu dosya çalıştırılarak bu komutlar icra edilir. Bu dosyaların MATLAB’ın çalıştığı dizinde "*****.m" uzantısıyla saklanmaları gerekir. Senaryo dosyalarının (M - dosyalarının) oluşturulması ve yazılması için MATLAB bir metin hazırlayıcısı (text editor) sunmaktadır. Bu senaryo dosyaları Windows’da Notepad gibi herhangi bir metin hazırlayıcısında da yazılabilirler. MATLAB metin hazırlayıcısı ya komut penceresinin üst kısmında yer alan “New M-file” düğmesi tıklanarak veya kısaca “File” menüsünden “New/M-file” ibaresini seçerek etkin hale getirilebilir.

Neden M-Dosyalarına İhtiyaç Duyuyoruz? Değişken sayısı fazla olması durumunda Akış diyagramlarının uygulanmasında Programdaki değişikliklerin kolayca yapılmasında M-dosyalarının Kullanılmasında Dikkat Edilecek Hususlar:  M-dosyası çalışma klasörü olarak tanımlanan klasörde bulunmalıdır.  Bu dosyaların MATLAB’in Çalışma Dizini (Current Folder) altında "DosyaAdi.m" şeklinde saklanmaları gerekir.  M-dosyasına isim verilirken kesinlikle Türkçe karakter kullanılmamalıdır.  M-dosyasına isim verilirken MATLAB’in hazır komutları (pi, exp, sin ve vs.) verilmemelidir.

Uygulama-1: input komutu ile kullanıcıdan klavye yoluyla aldığı iki sayının ortalamasını hesaplayıp bu değeri fprintf komutuyla ekrana yazan bir programın m-dosyası kullanılarak hazırlayınız. UYGULAMALAR

Uygulama-2: Ekrandan dairenin yarıçapını isteyerek alanını ve çevresini hesaplayan programı m-dosyası kullanılarak hazırlayınız.

Uygulama-2: input komutu ile kullanıcıdan klavye yoluyla aldığı santigrat derece cinsinden bir sıcaklık değerini fahrenhayt derece cinsinden sıcaklık değerine dönüştüren ve bu değeri fprintf komutuyla ekrana yazan bir programı m-dosyası kullanılarak hazırlayınız. Not: Fahrenhayt=1.8*Santigrat+32

Uygulama-2: input komutu ile kullanıcıdan klavye yoluyla aldığı x ve y değerlerine göre aşağıdaki fonksiyonun değerini hesaplayan bir program yazınız.

MATEMATİKSEL VE MANTIKSAL OPERATÖRLER MATLAB' da yapılan bir işlem sonucunda 'doğru' veya 'yanlış' şeklinde sonuçlar üreten iki çeşit operatör vardır. Bunlar matematiksel ve mantıksal operatörlerdir. Matematiksel veya mantıksal operatörler kullanılarak gerçekleştirilen işlemlerde, işlemin sonucunun "doğru" olması durumunda 1, "yanlış" olması durumunda ise 0 değeri elde edilir. ==Eşit Mi? ~=Eşit Değil Mi? >Büyük Mü?>=Büyük veya Eşit Mi? MATEMATİKSEL ÖPERATÖRLER <Küçük Mü? <=Küçük veya Eşit Mi?

 Eşitlik testinde 2 adet "==" işareti kullanılır. Oysa değişken atamalarında kullandığımız eşittir "=" 1 tanedir.  MATLAB komut penceresinde 3=5 yazdığımızda program hata verir. Oysa 3==5 yazdığımızda bu “3, 5'e eşit midir?" anlamına gelir, karşılaştırma yanlıştır ve MATLAB bu durum için 0 (Sıfır) sonucunu üretir.

İlişkisel Operatörlerin Öncelik Sıraları  İlişkisel operatörler aritmetik operatörlerden daha düşük bir işlem önceliğine sahiptirler.  Örneğin komut penceresinde 3+4<7-5 şeklinde çalıştırılacak bir MATLAB deyimi arka planda önce 7<2 formuna dönüştürülür ve ilişkisel test (küçüklük testi) daha sonra gerçekleştirilir.  Benzer şekilde i+j==10 gibi bir eşitlik testi, öncelikle hesaplanan i+j aritmetik işleminin sonucu ile 10 sayısı arasında gerçekleştirilir.  Yukarıdaki deyimler, karışıklığa meydan vermemek için (3+4)<(7-5) ve (i+j)==10 formlarına sokulabilirler.

Mantıksal Operatörler Mantıksal operatörler de ilişkisel operatörler gibi sonuç olarak 1 (BİR) (true) veya 0 (SIFIR) (false) değerlerini üretirler. ABA && B ABA || B ~A~AA Mantıksal Matlab Operatörleri İşlevleri a&&bVE (AND) a||bVEYA (OR) ~a~aDEĞİL (NOT)

Örnekler:

KONTROL YAPILARI

if Şartlı Deyimi Bir karşılaştırma ifadesini veya mantıksal bir ifadeyi test ederek bunun sonucuna göre mümkün seçeneklerden birini icra edebilen bir komuttur. if Deyiminin Üç Farklı Kullanım Şekli Vardır: if koşul işlem(ler) end if koşul işlem(ler) else işlem(ler) end if koşul1 işlem(ler) elseif koşul2 işlem(ler) else işlem(ler) end koşul dediğimiz şey bir karşılaştırma ifadesi (a>b gibi) ya da bir mantıksal ifadedir (a&&b gibi).

UYGULAMALAR Uygulama-1: Klavyeden girilen iki sayının oranını bulan ve fprintf komutuyla ekrana basan bir MATLAB düzyazı m-programı yazınız. (Programınız payda sıfır girildiğinde disp komutuyla ekrana “Üzgünüm! Sıfıra Bölüm Hatası Var.” mesajını yazdırmalıdır.)

Uygulama-2: Kullanıcıdan klavye yoluyla alınan x ve y değerlerine göre aşağıdaki sonuçlardan birini hesaplayan bir MATLAB programı yazınız.

Adım 1: Başla Adım 2: A,B,C sabitlerini değişkenlere ata Adım 3: Deltayı hesapla Adım 4: Delta<0 ise Adım 5’e, değilse Adım 6’a geç Adım 5: Ekrana ‘’Kökler sanaldır’’ yaz Adım 9’a geç Adım 6: 1. kökü hesapla, x1 değişkenine ata Adım 7: 2. kökü hesapla, x2 değişkenine ata Adım 8: x1 ve x2 değişkenlerini ekrana yaz Adım 9: Bitir

Neden Hata Veriyor

Uygulama-4: Girilen ay numarasına göre gün sayısını hesaplayan MATLAB programını yazınız.

switch Şartlı Deyimi

Kaynaklar: Ahmet Dumlu ders notlari Matlab İle Programlama (Dr. Deniz DAL) Matlab 7.6 Simulink & Mühendislik Uygulamaları (Prof. Dr. Uğur ARİFOĞLU) 22