Professional Documents
Culture Documents
(7. Hafta)
(Yrd. Do. Dr. Deniz Dal)
UYGULAMA i rastgele oluturulmu tam saylarla dolu (1 ile 50 arasnda) 10 elemanl bir satr vektrnn en kk ve en byk elemann bularak ekrana basan bir MATLAB program yaznz. (min ve max fonksiyonlarn kullanmyoruz Kendi min ve max fonksiyonlarmz yazmaya alyoruz.)
clc; clear; A=round(1+49*rand(1,10)); %Dizinin En Kucuk ve En Buyuk Elemaninin Dizinin %Ilk Elemani Oldugunu Farzet enKucuk=A(1); enBuyuk=A(1); for i=2:length(A) %Indeksin 2 den basladigina dikkat ediniz if A(i)<enKucuk enKucuk=A(i); end if A(i)>enBuyuk enBuyuk=A(i); end end disp(A); disp(['Bu Dizinin En Kucuk Elemani : ' num2str(enKucuk)]); fprintf('Bu Dizinin En Buyuk Elemani : %d \n ', enBuyuk);
UYGULAMA i rastgele oluturulmu tamsaylarla dolu (1 ile 50 arasnda) 20 elemanl bir satr vektrnn elemanlarn bykten ke veya kkten bye sralayan ve ekrana basan bir MATLAB program yaznz. (Orjinal vektr de ekrana basmay unutmaynz.) (2. bir vektr kullanmna izin yoktur.) (sort fonksiyonunu kullanmyoruz )
A=[3 1 2] >>sort(A) veya sort(A,'ascend') Artan Sral A=[1 2 3] >>sort(A,'descend') Azalan Sral A=[3 2 1]
(Bizler MATLABde tanml bu sort fonksiyonunu kullanmayacaz. Kendi sort programlarmz yazacaz.)
Bu algoritma birinci elemandan balayarak son elemana kadar, sralanmam DZY para para sralar. nce dizideki en kk eleman bulunur ve dizinin ilk eleman ile yer deitirilir (swap). Sonraki aamada dizinin sralanmam olan paras iindeki en kk eleman bulunur ve ikinci elemanla yer deitirilir. Bu ilemi N defa tekrarladmzda N elemanl bir diziyi sralam oluruz.
FONKSYONLAR
Fonksiyonlar da bilgisayar programlardr. Bilgisayarlar yardmyla zlmeye allan problemler fonksiyonlar sayesinde ynetilmesi daha kolay, kk paracklara blnrler. Bu metoda Bl ve Ynet ya da Divide and Conquer ad verilir. Her fonksiyon:
Kendine zg bir isme sahiptir. GENELLKLE kendine, zerinde ilem yapaca bir argman (parametre) ya da argmanlar (parametreler) alr. GENELLKLE geriye bir deer dndrr. (skaler, vektr ya da matris.)
FONKSYON M DOSYALARI
Bir Fonksiyon M dosyasnn iki bileeni vardr : 1 Fonksiyonun imzas ya da prototipi (lk satrda tanmlanr.) 2 Fonksiyonun tanm (yapmas gereken i) (kinci satrdan balar ve devam eder.)
function cikis parametresi = fonksiyon_adi ( ) function cikis parametresi = fonksiyon_adi function fonksiyon_adi (giris parametreleri 1, 2, n)
Fonksiyon M dosyalarnn ilk satr MUHAKKAK yukarda tanmladmz gibi fonksiyonlarn imzas ya da prototipi dediimiz satrlardan olumaldr. Bir fonksiyonu yazmaya balamadan nce onun imzas hakknda iyice dnmeliyiz. (Giri parametresi(leri) almal m, geriye bir deer dndrmeli mi?)
Uzaklik.m
%imza
%tanm
>> Uzaklik(3,4,1,2)
Uzaklik.m clc;clear; 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);
Fonksiyon M dosyalar program yazma editr ierisindeki run butonu tklanarak ALITIRILMAZ. Komut penceresinden parametre(ler) girilerek altrlr.
arlma Sras
Komut Penceresi -> FonksiyonA -> FonksiyonB -> FonksiyonB(sonuc) -> FonksiyonA(sonuc)->Komut Penceresi(sonuc)
UYGULAMA
Dardan girilen x ve y deerlerine gre aadaki fonksiyonun deerini hesaplayan bir MATLAB programn fonksiyon M dosyas formatnda yaznz. (Dosya ad olarak Fonksiyon.m kullannz.)
UYGULAMALAR
1. Kendisine argman olarak ald say ift ise geriye 1 deerini, tek ise geriye 0 deerini dndren bir MATLAB programn fonksiyon M dosyas formatnda yaznz ve komut penceresinden altrnz. (Dosya ad olarak CiftMi.m kullannz.) 2. Kendisine argman olarak ald a ve b saylarn kullanarak geriye a^b ileminin sonucunu ^ operatrn kullanmadan hesaplayan bir MATLAB programn fonksiyon M dosyas formatnda yaznz ve komut penceresinden altrnz. (Dosya ad olarak CarparakKuvvet.m kullannz.) 3. Kendisine argman olarak ald a ve b saylarn kullanarak geriye a*b ileminin sonucunu * operatrn kullanmadan hesaplayan bir MATLAB programn fonksiyon M dosyas formatnda yaznz ve komut penceresinden altrnz. (Dosya ad olarak ToplayarakCarpma.m kullannz.) 4. Kendisine argman olarak ald say mkemmel ise geriye 1 deerini, deilse 0 deerini dndren bir MATLAB programn fonksiyon M dosyas formatnda yaznz ve komut penceresinden altrnz. (Dosya ad olarak MukemmelMi.m kullannz.)