Makine Müh. & Jeoloji Müh.

Slides:



Advertisements
Benzer bir sunumlar
Nesneye Yönelik Programlama
Advertisements

Fonksiyonlar - Functions
MATLAB.
Bilgisayar Programlama Güz 2011
EKRAN ÇIKTISI.
Bilgisayar Programlama Güz 2011
Nesnelerin Özellikleri. - Üye nesneler - friend belirtesi - Nesnelerin operatörlere yüklenmesi - this yerel (lokal) değişkeni - inline tanımlı üye fonksiyonlar.
MATLAB MATLAB İLE GRAFİK.
2. HAFTA (II.Öğretim) (I.Öğretim)
Bilgisayar Programlama (Yrd. Doç. Dr. İbrahim ASRİ)
MATLAB.
FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ
Ayrık Yapılar Matlab Notları
Bilgisayar Programlama Güz 2011
Makine Müh. & Jeoloji Müh.
Değişken Bildirimleri
MATLAB’de Diziler; Vektörler ve MAtrisler
MATLAB’İN SAYI YUVARLAMA FONKSİYONLARI
Javascript Oğuz İNAL.
MATLAB’ de Programlama
Fonksiyonlar ve Alt Programlar
Çoklu Denklem Sistemleri
Optimizasyon Teknikleri
Makine Müh. & Jeoloji Müh.
Erişim Denetimi, Fonksiyon
Fonksiyonlar Fonksiyon nedir?
Fonksiyonlar.
Bilgisayar Programlama (Yrd. Doç. Dr. İbrahim ASRİ)
Bilgisayar Programlama Güz 2011
MATLAB’ de Programlama
Paralel Programlamaya Giriş
FONKSİYONLAR.
Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi
BM-103 Programlamaya Giriş Güz 2014 (7. Sunu)
BM-103 Programlamaya Giriş Güz 2014 (8. Sunu)
Bilgisayar Programlama
Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar
Fonksiyonlar Fonksiyon Tanımı
BM-103 Programlamaya Giriş Güz 2014 (4. Sunu)
C PROGRAMLAMA FONKSİYONLAR Adres ile Fonksiyon Çağırma Pointer (İşaretçiler) ile Fonksiyon Çağırma Rekürsif Fonksiyonlar.
BM-103 Programlamaya Giriş Güz 2014 (2. Sunu)
Bölüm 6 Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar
 this anahtar sözcüğü, içinde bulunulan nesneye ait bir referans döndürür; bunun sayesinde nesnelere ait global alanlara erişme fırsatı bulunur. Şöyle.
BM-103 Programlamaya Giriş Güz 2014 (9. Sunu)
Görsel C# ile Windows Programlama
MATLAB’ de Programlama
Bilgisayar Programlama Güz 2011
SARKAÇ PROBLEMİNİN MATLAB ODE45 İLE ÇÖZÜMÜ
BMS-301 Kabuk Programlama Güz 2015 (6. Sunu) (Yrd. Doç. Dr. Deniz Dal)
BMS-301 Kabuk Programlama Güz 2015 (5. Sunu) (Yrd. Doç. Dr. Deniz Dal)
BM-103 Programlamaya Giriş Güz 2012 (3. Sunu)
Fonksiyonlar.
SAYISAL ANALİZ Doç.Dr. Cüneyt BAYILMIŞ.
Sayısal Analiz / Uygulama
9. HAFTA 25 Nisan2016. Fonksiyon M-Dosyaları Fonksiyon dosyaları ilk satırda “function” kelimesi bulunan “.m” uzantısı bulunan dosyalardır. MATLAB içinde.
DİJİTAL GÖRÜNTÜ İŞLEME Y. Doç. Dr. Esra Tunç Görmüş
BİLGİSAYAR PROGRAMLAMA DERSİ
BİLGİSAYAR PROGRAMLAMA DERSİ 7. DERS NOTU Konu: Dosya Yönetim.
BİLGİSAYAR PROGRAMLAMA DERSİ 4. DERS NOTU Konu: M-dosya yapısı ve Kontrol Yapıları 1.
Bölüm 6 Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar
C Programlama Dili Bilgisayar Mühendisliği.
BM-103 Programlamaya Giriş Güz 2016 (4. Sunu)
BM-103 Programlamaya Giriş Güz 2012 (6. Sunu)
BM-103 Programlamaya Giriş Güz 2016 (6. Sunu)
Bölüm 6: Kullanıcı Tanımlı Fonksiyonlar I
AC500 Eğitim Sunumları 3. Değişken Tanımlama.
3. HAFTA.
C ile Programlamaya Giriş
NİŞANTAŞI ÜNİVERSİTESİ
Sunum transkripti:

Makine Müh. & Jeoloji Müh. MATLAB’ de Programlama 2012-13/ Bahar Makine Müh. & Jeoloji Müh. Doç.Dr. Özcan Asilkan

FONKSİYONLAR Fonksiyonlar da bilgisayar programlarıdır. Bilgisayarlar yardımıyla çözülmeye çalışılan problemler fonksiyonlar sayesinde yönetilmesi daha kolay, küçük parçacıklara bölünürler. Bu metoda “Böl ve Yönet” ya da “Divide and Conquer” adı verilir. Her fonksiyon: Kendine özgü bir isme sahiptir. GENELLİKLE kendine, üzerinde işlem yapacağı bir argüman (parametre) ya da argümanlar (parametreler) alır. GENELLİKLE geriye bir değer döndürür. (skaler, vektör ya da matris.)

FONKSİYON M-DOSYALARI Bir fonksiyon m-dosyasının iki bileşeni vardır: 1 – Fonksiyonun imzası veya prototipi (İlk satırda tanımlanır.) 2 – Fonksiyonun tanımı (yapması gereken iş) (İkinci satırdan başlar ve devam eder.)

Düz Yazı M-Dosyalarından Farkları 1- Fonksiyonlar bir değeri ve değerler kümesini döndürür. 2- Fonksiyonların içinde atanmış değişkenler, fonksiyona ait yerel değişkenlerdir ve Matlab komut penceresinde gösterilmezler; komut satırındanda geri çağrılamazlar. Oysa script’lerde değişkenler genel olup Matlab komut penceresinde gösterilir ve komut satırından çağrılabilirler.

FONKSİYON İMZASI VEYA PROTOTİPİ function cikisParametresi = FonksiyonAdi (girisParametreleri 1, 2, …n) function [cikisParametreleri 1, 2,…, n] = FonksiyonAdi (girisParametreleri 1, 2, …n) function cikisParametresi = FonksiyonAdi ( ) function cikisParametresi = FonksiyonAdi function FonksiyonAdi (girisParametreleri 1, 2, …n) Fonksiyon m-dosyalarının ilk satırı MUHAKKAK yukarıda tanımladığımız gibi fonksiyonların imzası veya prototipi dediğimiz satırlardan oluşmalıdır. Bir fonksiyonu yazmaya başlamadan önce onun imzası hakkında iyice düşünmeliyiz. (Giriş parametresi(leri) almalı mı, geriye bir değer döndürmeli mi?)

Fonksiyon M-Dosyaları Oluşturulurken Dikkat Edilmesi Gereken Hususlar: 1 - Her MATLAB fonksiyonu function anahtar kelimesi ile başlamalıdır. 2 - FonksiyonAdi m-dosyasına verilen isimle aynı olmalıdır. 3 - Bir MATLAB fonksiyonu komut penceresinden fonksiyon adı ve varsa eğer parantez içerisinde birbirlerinden virgüllerle ayrılmış parametrelerle çağrılmalıdır. 4 - Parametre aktarımı olması durumunda alt ve ana programda eşit sayıda giriş parametresi olmalıdır. 5 - Fonksiyon m-dosyaları içerisinde input komutu kullanılarak kullanıcıdan bilgi ALINMAZ. Fonksiyon içerisinde değerlendirilecek bilgi programa parametre olarak aktarılır. 6 - Fonksiyon m-dosyaları program yazma editörü içerisindeki run butonu tıklanarak ÇALIŞTIRILMAZLAR. Komut penceresinden parametre(ler) girilerek çalıştırılırlar.

>> Uzaklik(3,4,1,2) %sonuc, ans adli degiskene atanir Uygulama: İki nokta arasındaki uzaklığı bulan programı m-fonksiyon kullanarak yazınız. x1 = 1. noktanın x koordinati; x2 = 2. noktanın x koordinati y1 = 1. noktanın y koordinati; y2 = 2. noktanın y koordinati Uzaklik.m function mesafe = Uzaklik(x1,y1,x2,y2) %imza mesafe=sqrt((x2-x1)^2+(y2-y1)^2); %tanim KOMUT PENCERESİ >> Uzaklik(3,4,1,2) %sonuc, ans adli degiskene atanir veya >> sonuc=Uzaklik(3,4,1,2) %sonuc, sonuc adli degiskene atanir

BİR ÖNCEKİ ÖRNEĞİN SCRIPT M-DOSYASI İLE ÇÖZÜMÜ Uzaklik.m x1=input(' x1 koordinatini gir: '); y1=input(' y1 koordinatini gir: '); x2=input(' x2 koordinatini gir: '); y2=input(' y2 koordinatini gir: '); mesafe=sqrt((x2-x1)^2+(y2-y1)^2); fprintf(' Girilen 2 nokta arasi mesafe: %f \n ',mesafe); KOMUT PENCERESİ >>Uzaklik

ANA FONKSİYON, ALT (YARDIMCI) FONKSİYON MANTIĞI Bir fonksiyon m-dosyasının içerisinde daha önceden tanımlanmış ve çalışma dizininizin altında mevcut olan başka bir fonksiyon m-dosyasını (alt program, yardımcı program) kullanabilirsiniz. FonksiyonA.m (Ana) FonksiyonB.m (Alt) function sonuc1=FonksiyonA(n) sonuc1=FonksiyonB(n)+5; function sonuc2=FonksiyonB(m) sonuc2=m*sqrt(m); FonksiyonA temelde ne iş yapıyor? Çağrılma Sırası Komut Penceresi -> FonksiyonA -> FonksiyonB -> FonksiyonB(sonuc) -> FonksiyonA(sonuc)->Komut Penceresi(sonuc)

DEĞİŞKENLER Yerel (local) değişkenler Genel (global) değişkenler (topla.m)

KOMUTLAR what Tüm özel dosyaları listeler. inmem Tüm fonksiyonları listeler. dir Tüm dosyaları listeler. type Tüm m-dosyalarının içeriğini gösterir. edit Tüm m-dosyalarını düzenleme modunda açar.

KOMUTLAR clear fonksiyon_adi Belirli bir fonksiyonu bellekten siler. clear functions Tüm fonksiyonları bellekten siler. delete fonksiyon_adi.m Dosyayı sabit disk’ten siler.

UYGULAMA Dışarıdan girilen x ve y değerlerine göre aşağıdaki fonksiyonun değerini hesaplayan bir MATLAB programını fonksiyon M dosyası formatında yazınız. (Dosya adı olarak Fonksiyon.m kullanınız.) Bu fonksiyon m-dosyasının imzası ne olmalıdır? Bu fonksiyon m-dosyasının tanımı ne olmalıdır?