MATLAB/Diziler (Karakter Dizileri)

Benzer belgeler
MATLAB Yardımcı Ders Notları

MATLAB (MATrix LABoratuary)

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İ

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

MATLAB/Değişkene Değer Atamak

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

TRIGONOMETRI AÇI, YÖNLÜ AÇI, YÖNLÜ YAY

MATLAB Yardımcı Ders Notları

ALGORİTMA VE PROGRAMLAMA Ek Ders Notu

İçindekiler. Kaynakça

Trigonometrik Fonksiyonlar

Ders 1 : MATLAB Programlama Ortamı

Fonksiyonlar (Altprogram)

MATLABA GİRİŞ 1. MATLAB. Komut penceresi. MATLAB adı, MATrix LABoratory (Matrix Laboratuarı) kelimelerinden gelir.

MATLAB/Programı Dallandıran İfadeler

Matlab da Dizi ve Matrisler. Mustafa Coşar

MATLAB Yardımcı Ders Notları

8. ÜNİTE TRİGONOMETRİK FONKSİYONLAR

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 11: Metot Kavramı

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8

ALGORİTMA VE PROGRAMLAMA I

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

NĐĞDE ÜNĐVERSĐTESĐ Elektrik Elektronik Mühendisliği Bölümü. Devre Tasarımı Ders Notları MATLAB. Arş. Gör. Salim ÇINAR. salim çınar

MATLAB. Temel işlemler, Vektörler, Matrisler DOÇ. DR. ERSAN KABALCI

MATLAB Semineri. EM 314 Kontrol Sistemleri 1 GÜMMF Elektrik-Elektronik Müh. Bölümü. 30 Nisan / 1 Mayıs 2007

ALGORİTMA VE PROGRAMLAMA I

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

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

MATLAB İLE PROGRAMLAMAYA GİRİŞ. Nedim TUTKUN Elektrik Elektronik Mühendisliği Bölü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,

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

MATLAB ile ANALİZ (MIA)

ALGORİTMA VE PROGRAMLAMA I

Dr. Fatih AY Tel:

İM 205-İnşaat Mühendisleri için MATLAB. Irfan Turk Fatih Üniversitesi,

ALGORİTMA VE PROGRAMLAMA I

11. SINIF MATEMATİK DERSİ İLERİ DÜZEY ÖĞRETİM PROGRAMI

BİLGİSAYAR PROGRAMLAMA MATLAB

DİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II

Bilgisayar Programlama MATLAB

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

Projenin Amacı: Çok kullanılan trigonometrik oranların farklı ve pratik yöntemlerle bulunması

Bölüm: Matlab e Giriş.

BİLGİSAYAR PROGRAMLAMA DERSİ

D İ Z İ L E R A R R A Y S

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

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Ş (

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

COS işlevi Sözdizimi COS sayı Sayı Uyarılar Örnek 1 Formül Açıklama (Sonuç) SİN işlevi Sözdizimi SİN sayı Sayı Uyarı

Internet Programming II

11. SINIF. No Konular Kazanım Sayısı GEOMETRİ TRİGONOMETRİ Yönlü Açılar Trigonometrik Fonksiyonlar

MATLAB MATLAB MAT LAB MAT LAB MATLAB

BİL1001 Bilgisayar Bilimlerine Giriş 1

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

MatLab. Mustafa Coşar

ÜNİVERSİTEYE HAZIRLIK 11. ve 12. SINIF OKULA YARDIMCI KONU ANLATIMLI SORU BANKASI MATEMATİK TRİGONOMETRİ

ALFASAYISAL BİLGİLER KARAKTER DİZİLERİ (STRING)

WEB PROGRAMLAMA. PHP Temelleri. Dr. Erman Yükseltürk

BÖLÜM 7: DÖNGÜ KONTROL YAPILARI

BÝREY DERSHANELERÝ SINIF ÝÇÝ DERS ANLATIM FÖYÜ MATEMATÝK - II

Özyineleme (Recursion)

MatLab. Mustafa Coşar

HSancak Nesne Tabanlı Programlama I Ders Notları

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

INPUTBOX KULLANIMI. Komut Düğmesine uygulanan algoritma örneği

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

DİZİLER 5/4/2010. ENF-102 Jeoloji Giriş. Tek Boyutlu Diziler. Tek Boyutlu Diziler. Örnek. Örnek

Fonksiyonlar. Yrd.Doç.Dr.Bülent Çobanoğlu

Giriş. ENF102 Jeoloji

Sayfa No. Test No İÇİNDEKİLER TRİGONOMETRİ

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

Dr. Fatih AY Tel: fatihay@fatihay.net

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

Yrd. Doç. Dr. A. Burak İNNER

BİL-142 Bilgisayar Programlama II

Diziler İndisli Değişkenler

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 9

Ders 5: Temel Kütüphane Fonksiyonlar

Internet Programming II


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

f : A B f(x) a b.sin (cx d), g(x) a b.cos (cx d) TRİGONOMETRİ-2 PERİYODİK FONKSİYONLAR f, A kümesinden B kümesine tanımlı bir fonksiyon olsun.

Veri Yapıları. Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz. İçindekiler:

YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ. 3. Hafta

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

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

ALGORİTMA VE PROGRAMLAMA II

10. SINIF MATEMATİK KONU ÖZETİ

C++ Dersi: Nesne Tabanlı Programlama

GNUPLOT ÇİZİM PROGRAMI

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri

BİLGİSAYAR PROGRAMLAMA DERSİ

Pascal Programlama Dili (2. hafta)

NESNEYE YÖNELİK PROGRAMLAMA

Byte (Tamsayı) 1 0 ile 255 arasında 10 sayısı

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

PROGRAMLAMAYA GİRİŞ DERS 2

Ders 4: Diziler (Arrays( Arrays) barisgokce.com

Transkript:

24.03.205 MATLAB/Diziler (Karakter Dizileri) isletter fonksiyonu karakter dizilerini oluşturan elemanların bir harf mi yoksa bir rakam mı veya bir boşluk mu olduğunu sorgular. isspace fonksiyonu karakter dizilerini oluşturan elemanların boşluk karakteri olup olmadığını denetler. ischar fonksiyonu dizinin bir karakter dizisi olup olmadığını sorgular. >> ders='tbb GN 6';ders=20; >> isletter(ders) 0 0 0 0 >> isspace(ders) 0 0 0 0 0 0 0 >> ischar(ders) >> ischar(ders) 0 43 MATLAB/Diziler (Hücre Dizileri) Hücre Dizileri (Cell arrays) { } ile tanımlanır. Böylesi bir dizi, farklı matrisleri aynı isim altında tutmak ve işlemek için kullanılmaktadır. Örneğin, C{}=[ 2;3 5],C{2}=[4 4 4 4];C{3}=[('yildiz teknik'),(' insaat')]; girildiğinde, C bir hücre dizisi olur. Bu hücre geri çağrıldığında, C = [2x2 double] [x4 double] [x20 char] C{} hücresi C{2} hücresi C{3} hücresi Her bir hücre ayrı ayrı işlenir. 44

24.03.205 MATLAB/Diziler (Hücre Dizileri) C=cell(n) n n hücreden oluşan boş bir hücreyi C ye atar. Örneğin n=2 için >> C=cell(2) C = [] [] [] [] hücresi oluşturulur. Bir hücrenin içine istenilen sayıda yeni hücreler eklemek mümkündür; Örneğin, C{}{}=[2 3] ile C aşağıdaki biçimde değişir; C = {x cell} [] [] [] 45 MATLAB/Diziler (Hücre Dizileri) C=cell(3,2) hücresi C{,2} hücresi C{,} C{,2} C{,2}{,} C{,2}{,2} C{2,} C{2,2} C{,2}{2,} C{,2}{2,2} C{3,} C{3,2} Yeni alt hücre(ler) C{,2}{2,2} hücresi 46 2

24.03.205 MATLAB/Diziler (Yapı Dizileri) Yapı dizileri (Structure arrays), veri tabanları için oldukça kullanılışlı bir dizi türüdür. A yapı dizisi çağrıldığında, A.name= Bahattin'; >>A A.sname= Erdogan'; A = A.univ='YTU'; A.city='Istanbul'; A.email= berdogan@yildiz.edu.tr'; A.year=202; ile A, bir structure array olur. name: Bahattin' sname: Erdogan' univ: 'YTU' city: 'Istanbul' email: berdogan@yildiz.edu.tr' year: 202 Hücre ve yapı dizileri, mat uzantılı dosyalar olarak, daha önce açıklanan save komutuyla kaydedilip, load komutuyla geri çağrılabilir. 47 num2str(a) Bir a sayısını bir karaktere atama (From numeric to (2) string) >> a=0; >> sonuc=num2str(a) sonuc = 0 >> ischar(sonuc) str2num(a) Karakter olan bir a sayısını sayı değerine atama >> deger=str2num(sonuc) deger = 0 >> isnumeric(deger) 48 3

24.03.205 mat2str(a) Bir a matrisini bir karakter dizisine atama >> sonuc=mat2str(rand(2)) sonuc = [0.6267359463 0.4983640598243;0.899768558377 0.9597439585608] >> ischar(sonuc) >> isnumeric(sonuc) 0 int2str(a) Bir a tam sayısını bir karaktere atama >> a=00.254; >> sonuc=int2str(a) sonuc = 00 49 char(a) Bir a hücresini bir karakter dizisine atama >> sonuc{,}='3'; >> sonuc{,2}='4'; >> sonuc{2,}='5'; >> sonuc{2,2}=['7' '5';'7' '8']; >> sonuc sonuc = '3' '5' '4' [2x2 char] >> arama=char(sonuc) arama = 3 5 4 75 78 50 4

24.03.205 cellstr(a) Bir a karakterini bir hücre dizisine atama >> deneme=cellstr(arama) deneme = '3' '5' '4' '75' '78' num2cell(a) Bir a sayısını bir hücre dizisine atama >> a=2; >> deneme=num2cell(a) deneme = [2] 5 Örnek: Bir işlem sonucunda a=0.234 elde edilsin. Elde edilen sonuc=0.234 karakterini görüntülemek için, ['Elde edilen sonuc=' num2str(a)] Her iki ifade karakter olmalıdır! yapısı düşünülebilir. Bunun daha gelişmiş biçimi, fprintf ile sağlanır: fprintf('elde edilen sonuc= %6.3f \n',a) 52 5

24.03.205 MATLAB/Trigonometrik Fonksiyonlar sin(x) asin(x) cos(x) acos(x) tan(x) atan(x) cot(x) acot(x) sec(x) asec(x) csc(x) acsc(x) x açısının sinüsünü verir. sinüsü x olan açıyı verir. x açısının kosinüsünü verir. kosinüsü x olan açıyı verir. x açısının tanjantını verir. tanjantı x olan açıyı verir. x açısının kotanjantını verir. kotanjantı x olan açıyı verir. x açısının sekantını verir. sekantı x olan açıyı verir. x açısının kosekantını verir. kosekantı x olan açıyı verir. MATLAB da trigonometrik fonksiyonlar için tanımlı açı değerleri radyan cinsinden olmalıdır. 53 MATLAB/Uygulama-3 Aşağıdaki işlemleri command window da yapınız.. fprintf fonksiyonunu kullanarak, a=0.45623 sayısını 3 haneye kadar yazdırınız. 2. [ sayinin degeri= a] ifadesini, a virgülden sonra 2 hane olacak biçimde yazdırınız. 3. Yukarıdaki ifadeyi bir b değişkenine atayınız (sprintf ile) 4. b nin bir karakter dizisi olup olmadığını denetleyiniz. 5. a değerini önünde 5 karakter boşluk kalacak biçimde 2 haneye kadar yazdırınız. 6. a değişkenini msgbox(a, sonuc ) ifadesiyle bir GUI ye yazdırınız. 7. b değişkenini msgbox(b, sonuc ) ifadesiyle bir GUI ye yazdırınız. 8. a nın karakökünü c değerine atayınız. b ve [ sayinin karakoku, c] ifadesi alt alta olacak biçimde (c, virgülden sonra 5 hane gösterilecek) msgbox içinde yazdırınız. msgbox(mesaj,başlık) mesaj karakter dizisi, karakter matrisi veya hücre dizisi şeklinde olmalıdır. 54 6

24.03.205 MATLAB/Uygulama-3:Çözüm 2 3 4 >> a=0.45623;fprintf( %.3f,a) 0.456 >> >>fprintf('sayinin degeri=%.2f',a) sayinin degeri=0.46 >> >>b=sprintf('sayinin degeri= %.2f',a) b = sayinin degeri=0.46 7 8 >> msgbox(b, sonuc ) >> >>c=sqrt(a) c = 3.2336 >>b=sprintf( sayinin karakoku=%.5f,c); >>g=char(b,b); >>msgbox(g, sonuc ) 5 6 >>ischar(b) 5 boşluk+5 karakter ans= >>fprintf( %0.2f,a) 0.46 >>msgbox(num2str(a), sonuc ) Not: b ve b karakter dizilerini alt alta yazdırmanın bir diğer yolu, bunları bir hücre dizisi altında düşünmektir; G=cell(2,);G{}=b;G{2}=b; msgbox(g, sonuc ) benzer sonucu üretir. 55 MATLAB/Uygulama-4 Aşağıdaki işlemleri command window da yapınız.. Sonraki işlemlerde kullanılacak bir a sayı değerini, inputdlg fonksiyonu ile girdiren komutu yazınız. 2. a değerinin bir sayı olup olmadığını irdeleyiniz. 3. a*2 işlemini yapınız. Bu işlemin neden sonuç vermediğini irdeleyiniz. 4. a değerini, gerekli ise, sayı dizisine dönüştürünüz. inputdlg( ifade, başlık ) 56 7

24.03.205 MATLAB/Uygulama-4:Çözüm >> a=inputdlg( Bir sayi giriniz, YTU-202 ) 2 3 4 a = '50.2335465' >>isnumeric(a) 0 >>a*2 >>?? Error using ==> * inputdlg ile karakter hücre dizisi oluşturulur. Bu nedenle, girilen verinin sayı yapılması gerekir. Function '*' is not defined for values of class 'cell'. >>a=str2num(char(a)) >> a = 50.23 57 8