Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
1
MATLAB’ de Programlama
VI-VII Hafta 6-7 Matlab Ders Notları
2
A3: delta=B^2-4ac değerini hesapla
Uygulama: Ax2+Bx+C=0 ikinci derece denklemin köklerini hesaplayan aşağıdaki algoritmayı MATLAB’de programlayınız A1: Başla A2: A,B,C değerlerini gir A3: delta=B^2-4ac değerini hesapla A4: delta<0 ise ‘kökler kompleks’ yaz, değilse A5’e git A5: delta>0 ise ’kökler reel’ yaz, değilse ‘katlı kök hali’ yaz A6: A7: A8: X1 değerini yaz A9: X2 değerini yaz A10: Son Hafta 6-7 Matlab Ders Notları
3
a=input(‘x^2 li terimin katsayısını giriniz=‘);
Çözüm: a=input(‘x^2 li terimin katsayısını giriniz=‘); b=input(‘x li terimin katsayısını giriniz=‘); c=input(‘Sabit terimi giriniz=‘); delta=b^2-4*a*c; if delta<0 disp(‘kökler kompleks’); elseif delta>0 disp(‘kökler Reel’) elseif delta ==0 disp(‘katli kök hali’) end x1=(-b+sqrt(delta))/(2*a); x2=(-b-sqrt(delta))/(2*a); fprintf(‘1.kök:%f\n’, x1); fprintf(‘2.kök:%f\n’, x2); Hafta 6-7 MATLAB Ders Notları
4
MATLAB’de Karakter Tipinde Değişken Girişi:
k=input(‘Açıklama: '); Komutu ile k değişkenine sadece sayısal değerler girebiliriz. Bu k değişkeni bir karakter olduğunda ve bu değişkene komut penceresinde bir karakter değer girmek istediğimizde değeri iki tırnak içinde girmek zorundayız. Bu durumdan kurtulmak için MATLAB’de karakter tipindeki değişkenin okutulması için şu yapı kullanılır: Degisken_adi=input(‘Açıklama: ', 's'); Değişkenin karakter tipinde olduğunu gösterir Hafta 6-7 MATLAB Ders Notları
5
karakter=input('Karakteri giriniz: ', 's'); ksayi=0;
Örnek: Karakter değerler okuyan ve bir noktaya rastlayınca toplam karakter sayısını veren programı MATLAB’de yazınız. karakter=input('Karakteri giriniz: ', 's'); ksayi=0; while karakter ~= ‘ . ' karakter=input('Karakteri giriniz:', 's'); ksayi=ksayi+1; end fprintf('Toplam karakter sayısı=%g', ksayi) Hafta 6-7 MATLAB Ders Notları
6
Örnek 1: PROGRAMLAMADA DİZİ KAVRAMI
Bir değişken içerisinde birden çok veri numaralandırılarak tek bir isim altında saklanmasına DİZİ denir. Dizi içinde aynı isim altında çok sayıda veri olduğu için bunları birbirinden ayırt etmek için İNDİS adı verilen bir bilgiye ihtiyaç vardır. Örnek 1: A Dizisi 23 45 -1 1.24 78 A(1) A(2) A(3) A(4) A(5) Hafta 6-7 Matlab Ders Notları
7
Örnek 2: İKİ BOYUTLU DİZİ
B DİZİSİ 1 2 3 4 23 12 75 48 3 36 15 45 4 55 13 1 2 3 B(1,1)=23, B(1,2)=12, B(1,3)=75, B(1,4)=48 B(2,1)=3, B(2,2)=36, B(2,3)=15, B(2,4)=12 B(3,1)=45, B(3,2)=4, B(3,3)=55, B(3,4)=13 Hafta 6-7 Matlab Ders Notları
8
Tek boyutlu bir dizinin değerlerinin girilmesi (okutulması)
Aşağıda 1x5 boyutunda (1 satır ve 5 sütun) bir dizinin elemanlarını giren MATLAB programı aşağıda verilmiştir for i=1:5 fprintf('A(%d)=',i) A(i)=input(‘ '); end A Hafta 6-7 Matlab Ders Notları
9
Örnek: N elemanlı bir dizinin N değeri ve elemanları okutulacak (dışardan girilecek) ve bu vektörün normunun karesi (elemanlarının karelerinin toplamı) bulunacaktır N=input('N deðerini giriniz='); toplam=0; for i=1:N fprintf('A(%d)=',i); A(i)=input(''); end toplam=toplam+A(i)*A(i); fprintf('A matrisinin normunun karesi=%f', toplam) Hafta 6-7 Matlab Ders Notları
10
İKİ BOYUTLU BİR DİZİNİN DEĞERLERİNİN GİRİLMESİ (OKUTULMASI)
Aşağıda 2x3 boyutunda (2 satır ve 3 sütun) bir dizinin elemanlarını giren MATLAB programı aşağıda verilmiştir: for i=1:2 for j=1:3 fprintf('B(%d,%d)=',i,j) B(i,j)=input(''); end B Hafta 6-7 Matlab Ders Notları
11
Uygulama 1 Elemanları dışardan girilen iki boyutlu bir dizinin programını yazınız (değerler aşağıda verilmiştir) 12 21 23 90 34 67 45 89 Uygulama 2 0 ile 50 arasında 4 artımlı bir tek boyutlu A dizisi oluşturunuz Hafta 6-7 Matlab Ders Notları
12
VEKTÖRLER (DİZİLER) ve MATRİSLER
MATRİSLE, iki boyutlu DİZİLER (VEKTÖRLER) olarak düşünülebilirler: Böyle dikdörtgen bir tabloya, mxn matrisidir denir. Burada, m sayısına matrisin satır sayısı, n sayısına matrisin sütun sayısı denir. Eğer, m=n ise matris kare matris olarak adlandırılır, ve A matrisi, n. mertebedendir denir. Hafta 6-7 Matlab Ders Notları
13
Örnek: Verilen A ve B matrislerini düşününüz.
A matrisi 2x3 ve B matrisi ise 2x2 matristir. a22=5 ve b12=2 Bir matrisin veya vektörün boyutlarını tespit etmek için aşağıdaki MATLAB komutu kullanılır [m,n]=size(A) m = 3 n = 2 Burada m: satır sayısını n: sütün sayısını göstermektedir Hafta 6-7 Matlab Ders Notları
14
MATRİSLERLE İŞLEMLER Matrislerin kendilerine ait bir cebirleri vardır. Özellikle matrislerin aşağıda sıralanan dört işlemleriyle ilgileneceğiz. Bir skalerle çarpım Matris toplama Matris çıkarma Matris çarpımı Matris transpozu İleri MATRİS işlemleri için MATLAB hazır fonksiyonları kullanılacaktır Hafta 6-7 Matlab Ders Notları
15
Örnek: Matrislerle Skaler Çarpım
Her hangi bir matris, bir c skaleriyle çapılabilir. Sonuçta, matris cA, Örnek: Aşağıda verilen Matrisin 2 ile çarpımı sonucunu veren MATLAB programı A=[2 3 ; 1 4]; [m,n]=size(A); for i=1:m for j=1:n C(i,j)=2*A(i,j); end C Hafta 6-7 Matlab Ders Notları
16
ÖRNEK: A=[1 3; 4 2]; for i=1:2 for j=2:2 A(i,j)=3*A(i,j); end A
Elemanları dışardan girilen 2x2’lik bir Matrisin 2. sütununu 3 ile çarpıp yeni bir Matris elde eden bir MATLAB programı yazınız A=[1 3; 4 2]; for i=1:2 for j=2:2 A(i,j)=3*A(i,j); end A Hafta 6-7 Matlab Ders Notları
17
Ödev: 3x3’lük bir matris dışardan girilerek (okutularak) bu matrisin ana köşegen elemanlarının toplamını bulan programı yazınız. Hafta 6-7 Matlab Ders Notları
18
Matrislerde Toplama ve Çıkarma İşlemi
İki matrisin toplanabilmesi veya çıkarabilmesi için boyutlarını yani satır ve sütün sayısını eşit olmalıdır. İki matrisin toplamı MATLAB programı A=[2 3; 1 4]; B=[3 6; 4 5]; for i=1:2 for j=1:2 C(i,j)=A(i,j)+B(i,j); end C Hafta 6-7 Matlab Ders Notları
19
Örnek Matrislerde Çarpma İşlemi
A ve B gibi iki matrisin çarpılabilmesi için A matrisinin Sütun sayısının B matrisinin satır sayısının eşit olması gerekmektedir. A matrisi mxn boyutunda, B matrisi nxk olmak üzere Bu çarpma işlemi sonucunda elde edilecek C matrisinin boyutu mxk olacaktır. Örnek clear clc A=[1 2 1;0 3 -1]; B=[1 2; 1 5;2 3]; for k=1:2 for i=1:2 C(i,k)=0; for j=1:3 C(i,k)=C(i,k)+A(i,j)*B(j,k); end C Hafta 6-7 Matlab Ders Notları
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.