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

Benzer belgeler
Bilgisayar Programlama MATLAB

BİLGİSAYAR PROGRAMLAMA Araş. Gör. Ahmet ARDAHANLI. Kafkas Üniversitesi Mühendislik Fakültesi

Fen ve Mühendislik Uygulamalarında MATLAB

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

Fen ve Mühendislik Uygulamaları ile MATLAB

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

MATLAB ile ANALİZ (MIA)

BİLGİSAYAR UYGULAMALARI Şırnak Üniversitesi Mühendislik Fakültesi Güz Dönemi Arş.Gör. Eren DEMİR ve Arş.Gör. Veysel KIŞ (

disp VEYA fprintf KOMUTLARIYLA EKRANA MESAJ YAZDIRMA

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

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

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

Değişken atama Kullanıcıdan veri girişi istendiğinde kullanılır. 1. Bir değişkene değer atama (örn: a=4 gibi) 2. Klavyeden veri girme

BİLGİSAYAR PROGRAMLAMA DERSİ

BİLGİSAYAR PROGRAMLAMA DERSİ

BMB1002 Bilgisayar Programlamaya Giriş. Dosyalar. Prof. Dr. Necmettin Kaya

Nargin - Nargout. Bir fonksiyonda giriş parametrelerinin kontrolü Nargin = number of argument input

Temel Bilgisayar Programlama

ALGORİTMA VE PROGRAMLAMA II

Genel Programlama II

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

ALGORİTMA VE PROGRAMLAMA Ek Ders Notu

şeklinde tanımlanmıştır. O halde, dosyaları daha önceki bilgilerimizi kullanarak FILE *Dosya1, *Dosya2;

ALGORİTMA VE PROGRAMLAMA II

Metin Dosyaları. Metin Dosyaları Dosya Açma ve Kapama Dosya Okuma ve Yazma Rastgele Erişim Standart Girdi/Çıktı Hata Kontrolü

Bilgisayar Programlama

BM202 SAYISAL ÇÖZÜMLEME

C Dosyalama. Öğr. Gör. M. Ozan AKI. Rev 1.0

Fen ve Mühendislik Uygulamaları ile MATLAB

Eln 1002 Bilgisayar Programlama II

mod ile açılacak olan dosyanın ne amaçla açılacağı belirlenir. Bunlar:

DOSYA İŞLEMLERİ Programlama dilleri hafta -

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

MatLab. Mustafa Coşar

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

BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

MATLAB/Programı Dallandıran İfadeler

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

GÖRÜNTÜ İŞLEME MATLAB DERS-4

OMÜ HAVACILIK VE UZAY BİLİMLERİ FAKÜLTESİ METEOROLOJİ MÜHENDİSLİĞİ BÖLÜMÜ MET103 BİLGİSAYAR PROGRAMLAMA I BÜTÜNLEME SINAVI

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-8 Dosya İşlemleri-1. Yrd. Doç. Dr. Ümit ATİLA

MATLAB Temelleri. EE-346 Hafta 2 Dr. Ayşe DEMİRHAN

BİLGİSAYAR PROGRAMLAMA DERSİ

MATLAB a GİRİŞ. Doç. Dr. Mehmet İTİK. Karadeniz Teknik Üniversitesi Makine Mühendisliği Bölümü

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

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

Ö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.

Bilgisayar Programlama MATLAB

Matlab da Dizi ve Matrisler. Mustafa Coşar

BİLGİSAYAR PROGRAMLAMA DERSİ

KONTROL SİSTEMLERİ-1 LABORATUVARI FİNAL PROJELERİ

Yrd. Doç. Dr. Caner ÖZCAN

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;

AKT 305 Aktüeryal Yazılımlar Ödev 1 Yanıtları Soru 1. Create a vector x with the elements...

Diziler (Arrays) Çok Boyutlu Diziler

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

KONTROL SİSTEMLERİ-1 LABORATUVARI DENEY -1. Öğr. Gör. Güzin ÖZMEN Arş. Gör. Fehmi SEVİLMİŞ

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

MATLAB Temelleri. EEM104 - Bilgisayar Programlama. Matlab ın Açılış Ekranı. Dr. Mehmet Siraç Özerdem EEM Dicle Üniversitesi. Launch Pad.

NJ Kontrolcüde SD Kart a Değişken Değeri Kaydetme. NJ Kontrolcülerde SD Kart Fonksiyonları Blokları FilePuts ile Datalog Uygulaması

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,

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

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

BM102 BİLGİSAYAR PROGRAMLAMA II LABORATUVAR UYGULAMALARI. 3Hafta

BİLGİSAYAR PROGRAMLAMA DERSİ

Eastern Mediterranean University Faculty of Arts & Sciences -- Department Of Mathematics BİLG213 BİLGİSAYAR PROGRAMLAMAYA GİRİŞ

MATLAB. Fen ve Mühendislik Uygulamaları ile. Doç. Dr. M. Akif CEVİZ. MATLAB de Dizi Kavramı

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

Bilgisayar Programlama MATLAB

GİRİŞ/ÇIKIŞ VE TANIMLAMA DEYİMLERİ

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

MATLAB İLE PROGRAMLAMAYA GİRİŞ. Nedim TUTKUN Elektrik Elektronik Mühendisliği Bölümü

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

Sınav tarihi : Süre : 60 dak.

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

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

HSancak Nesne Tabanlı Programlama I Ders Notları

İnternet Programcılığı Öğr. Gör. Serkan AKSU PHP de Dizi-Değişkenler, Nesneler. Dizi Oluşturma. Tek Boyutlu Diziler

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

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf

Temel Bilgisayar Programlama Final Sınavı Çalışma Notları

Temel Dosya İşlemleri. Kütük Organizasyonu 1

Eln 1002 Bilgisayar Programlama II

GENEL GĐRĐŞ-ÇIKIŞ FONKSĐYONLARI. ENF102 Jeoloji 1. #include <stdio.h> printf Fonksiyonu ÖRNEK. printf

fprintf ( Ekranda Görüntülenen Mesaj )

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

Uygulama 1) Sabit olarak belirlenen sayıda tekrar eden (5 kez) Visual Basic kaynak kodlarını yazınız.

Eln 1001 Bilgisayar Programlama I

BİLGİSAYAR PROGRAMLAMA MATLAB

2 PYTHON A GIRIŞ 13 PyCharm İle Python Projesi Oluşturma 15 Projenin Çalıştırılması 18 İlk Python Programımız 19 Açıklama Satırları 21

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 9

NESNEYE YÖNELİK PROGRAMLAMA

Yrd. Doç. Dr. Caner ÖZCAN

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

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

Görsel Programlama 1

JAVASCRİPT ÖRNEKLERİ

program uc_hata implicit none integer : x(5),i

Transkript:

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

error Fonksiyonu error fonksiyonu, disp fonksiyonunun tek farkı hata mesajından önce bir Error satırı içermesidir. sayi=input( * 0 ile 1 arasinda bir sayi giriniz * : ); if sayi > 1 error( Dikkat! Sayi 0 ile 1 arasinda olmalidir. ) else disp( ) disp( Rasyonel sayi karsiligi= ) disp(rats(sayi))» rasyonelkar * 0 ile 1 arasinda bir sayi giriniz * : 4??? Error using ==> rasyonelkar Dikkat! Sayi 0 ile 1 arasinda olmalidir.

warning Fonksiyonu warning fonksiyonunun, aslında çok geniş uygulama alanları vardır. Buradaki kullanımı sadece bir örnekleme olması içindir. sayi=input( * 0 ile 1 arasinda bir sayi giriniz * : ); if sayi > 1 warning ( Dikkat! Sayi 0 ile 1 arasinda olmalidir. ) else disp( ) disp( Rasyonel sayi karsiligi= ) disp(rats(sayi))» rasyonelkar * 0 ile 1 arasinda bir sayi giriniz * : 4 Warning: Dikkat! Sayi 0 ile 1 arasinda olmalidir. > In E:\bin\rasyonelkar.m at line 5

nargin ve nargout fonksiyonları Fonksiyonlarda kullanılan giriş ve çıkış değişkenlerinin sayısını kontrol etmek için kullanılır. nargin (number of argument input); fonksiyonun kaç adet giriş değişkeni ile çağırıldığını verir. nargout (number of argument input); fonksiyonun kaç adet çıkış değişkeni ile çağırıldığını verir. Farklı sayıdaki giriş ya da çıkış değişkenine göre farklı fonksiyona değişik görevler yaptırılabilir.

nargin- Örnek function c = addme(a,b) switch nargin case 2 c = a + b; case 1 c = a + a; otherwise c = 0; >>c = addme(13,42) c = 55 >>c = addme(13) C=26

nargout- Örnek function [dif,absdif] = subtract(y,x) dif = y-x; if nargout > 1 disp('calculating absolute value') absdif = abs(dif); End >>diff = subtract(42,13) diff = 29 >>[dif,absdif] = subtract(2,5) Calculating absolute value dif = -3 absdif = 3

Özyinelemeli (Recursive) Fonksiyonlar MATLAB, recursive fonksiyonları desteklemektedir. Recursive fonksiyonlar; fonksiyonun ki içinde kini yeniden çağırması şeklinde çalışır. Bu fonksiyonda işlemler kuyruk mantığıyla işlem belirli bir noktaya gelene kadar devam ettirilir. Örnek Kullanım: function kuyruk_islemleri(kuyruk) if kuyruk==0 return else kuyruk_islemleri(kuyruk-1)

Özyinelemeli (Recursive) Fonksiyonlar Klavyeden girilen sayıya kadar olan sayıları ekrana yazan programın recursive fonksiyon ile yazılması function rec1(n) if n==0 return else rec1(n-1) disp(n)

Özyinelemeli (Recursive) Fonksiyonlar Klavyeden girilen sayının faktöriyelini alan programın recursive fonksiyon ile yazılması function f=rec2(n) % Bu program klavyeden girilen bir sayının faktoriyelini alır. if n==0 f=1; else f=n*rec2(n-1);

Özyinelemeli (Recursive) Fonksiyonlar Klavyeden girilen sayı kadar 2 nin karesini alan programın recursive fonksiyon ile yazılması function y=rec3(n) if n==0 y=1; else y=2*rec3(n-1);

Özyinelemeli (Recursive) Fonksiyonlar Klavyeden taban ve üsdeğerleri girilmektedir. Buna göre tabanın üsdeğerine göre üssünü recursive fonksiyonda alan program. function p=rec4(taban, us) %klavyeden taban ve üs değerleri girilerek tabanın üssü değeri bulunur. if (us==0) p = 1; else p = taban*rec4(taban, us-1);

Özyinelemeli (Recursive) Fonksiyonlar Klavyeden bir dizi ve eleman sayısı fonksiyona gönderiliyor.buna göre bu dizinn elemanlarınının toplamını recursive fonksiyonda alan program. function toplam=rec5(dizi, n) if(n<1) toplam = 0; else toplam = dizi(n) + rec5(dizi, n-1);

Dosya Yönetimi Şu ana kadar bir programda hesaplanan veya elde edilen veriler RAM de saklanacak şekilde tanımlanmıştı. Yani, bilgisayar kapatıldığında veya MATLAB programı sona erdirildiğinde veriler de kaybolmaktaydı. Oysa pek çok uygulamada elde edilen veriler daha sonra kullanılmak üzere saklanması gerekir. Bunun için verilerin bir dosyaya yazılması gerekmektedir.

Dosya Açma Dosya açma: fopen fopen komutu bilgi kaydetmek için veri dosyası açar veya oluşturur. Yazım formatı: İfade = fopen( dosya adı, izin ) Burada: ifade-> dosya değişkeni dosya adı->verilerin kaydedileceği dosyanın adı izin-> dosyanın kullanım izni : r,w,.., vs.

Dosya Açma

Dosya Kapama Dosya kapama: fclose Dosya yazma ve/veya okumaya açılan dosyanın MATLAB den ilişkisini kesmeye (dosyayı kapamaya) yarayan komuttur. Kullanımı: Sonuc=fclose(ifade)

Dosyaya Kayıt Dosyaya bilgilerin kaydedilmesi: fprintf Verilerin ekrana yazılmasında kullanılan fprintf fonksiyonu, aynı zamanda fopen komutuyla açılmış dosyaya yazmakta da kullanılır. Kullanımı: fprintf (ifade= %format%format%format.%format,değişken1, değişken2,değişken3,.)

Örnek Aşağıda verilen M dizisini (vektörünü) bir dosyaya kaydeden bir MATLAB programı yazınız M=[1 2 3 4]; a=fopen('veri.dat','w'); fprintf (a,'%d %d %d %d',m); fclose(a); For döngüsü ile: M=[1 2 3 4]; a=fopen('veri.dat','w'); for i=1:4 fprintf(a,'%d ',M(i)); fclose(a);

Örnek Aşağıda verilen matrisi veri.dat dosyasına kaydeden bir MATLAB programı yazınız. A=[1 5 11 ; 2 4 5]; a=fopen('veri.dat','w+'); for i=1:2 for j=1:3 fprintf(a,'%d ',A(i,j)); fclose(a); veri.dat isimli dosyayı silmeden A dizisini bu sonuna eklemek için hangi izin kulanılmalıdır?

Dosyadan bilgilerin okunması: fscanf fscanf: Formatlanmış verileri içeren dosyadan değerleri okuma komutudur ve yazılımı: [değişken, sayi] = fscanf (ifade, format,alan) Burada; değişken: okunan değerlerin atandığı değişken sayi alan : okunan data sayısı : inf ile verilerin tamamını okunması sağlanır

Örnek Aşağıda verilen vektörü bir dosyadan okuyup b değişkenine atayan MATLAB programını yazınız veri.dat 1 5 11 2 4 5 clear all clc a=fopen ('veri.dat', 'r' ); [b,sayi]=fscanf(a,'%d ',inf); fclose(a); b

Uygulama Dışardan girilen öğrenci no ve döneme ait aldığı ders isimlerini ve notunu kaydeden bir MATLAB programı yazınız

Dosyadan Bilgi Okuma Yanda verilen formattaki bir dosyadan bilgilerin aynı formatta okunması için: b=fopen(a, veri.dat,[2 inf] b aşağıda verilen matris formatına sahip olur: Satır vektörlerini faklı değişkenlere atamak için: c=b(1,:) d=b(2,:) Dosyadan bilgilerin direkt olarak farklı değişkenlere okutmak için a=fopen('veri.dat','r') for i=1:6 d(i)=fscanf(a,'%f',[1]); e(i)=fscanf(a,'%f',[1]); fclose(a)

Ödev Bir data dosyasında verilen sayıları kullanarak aşağıdaki fonksiyonun değerini hesaplayıp sonucu ana programda yazdıran bir MATLAB programı yazınız.

Excel ile Veri AlışVerişi Bir Excel (.xls) veri dosyası veya.txt ya da.dat dosyası Matlab ortamından okunabilir ve üzerinde Matlab işlemleri uygulanabilir. Benzer olarak bir Matlab program çıkışı da.xls olarak kaydedilebilir. Excel den veri almak: degisken =xlsread( xxx.xls ) x=degisken(:,1); %1. sütun y=degisken(:,2); %2. sütun Text dosyasından veri almak: load xxx.txt x=xxx(:,1); %1. sütun y=xxx(:,2); %2. sütun

Excel ile Veri AlışVerişi Excel den veri okutmak amacıyla xlsread fonksiyonu kullanılır. num = xlsread( filename, sheet, 'range') A = xlsread('deneme.xlsx', 1, 'C4:D7') A = 1 6 2 7 3 8 4 9