BM-103 Programlamaya Giriş Güz 2016 (4. Sunu)

Slides:



Advertisements
Benzer bir sunumlar
Nesneye Yönelik Programlama
Advertisements

DİZİLER – I. Kısım YRD.DOÇ.DR. CİHAD DEMİRLİ
Fonksiyonlar.
Makine Müh. & Jeoloji Müh.
Bilgisayar Programlama Güz 2011
EKRAN ÇIKTISI.
Bilgisayar Programlama Güz 2011
Bilgisayar Programlama (Yrd. Doç. Dr. İbrahim ASRİ)
Bilgisayar Programlama Güz 2011
Matlab ile temel ve özel matris işlemleri
MATLAB’ ta Diziler.
İletişim Lab. Deney 1 Alıştırma
MATLAB’de Diziler; Vektörler ve MAtrisler
MATLAB’İN SAYI YUVARLAMA FONKSİYONLARI
MATLAB’ de Programlama
Fonksiyonlar Hafta 4.
Nesneye Yönelik Programlama
Bilgisayar Programlama (Yrd. Doç. Dr. İbrahim ASRİ)
 2006 Pearson Education, Inc. All rights reserved. Görsel C# ile Windows Programlama Güz 2009 (5. Hafta)
Bilgisayar Programlama Güz 2011
4. HAFTA Mart 2010.
Paralel Programlamaya Giriş
DERS 3 DETERMİNANTLAR ve CRAMER YÖNTEMİ
BM-103 Programlamaya Giriş Güz 2014 (7. Sunu)
BM-103 Programlamaya Giriş Güz 2014 (8. Sunu)
MATLAB’te Döngüler.
BM-103 Programlamaya Giriş Güz 2014 (4. Sunu)
BM-103 Programlamaya Giriş Güz 2014 (2. Sunu)
4. LİSTE OLUŞTURMA VE BİÇİMLENDİRME
BM-103 Programlamaya Giriş Güz 2014 (9. Sunu)
Fonksiyonlar ile Çalışmak
MATLAB’ de Programlama
Bilgisayar Programlama Güz 2011
Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi
Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi
Algoritmalar ve Programlama I Ders 2: Akış Diyagramları
BMS-301 Kabuk Programlama Güz 2015 (6. Sunu) (Yrd. Doç. Dr. Deniz Dal)
SAYISAL ANALİZ Doç.Dr. Cüneyt BAYILMIŞ.
BMS-301 Kabuk Programlama Güz 2015 (5. Sunu) (Yrd. Doç. Dr. Deniz Dal)
BM-103 Programlamaya Giriş Güz 2012 (3. Sunu)
SAYISAL ANALİZ Doç.Dr. Cüneyt BAYILMIŞ.
Sayısal Analiz / Uygulama
Bilgisayar Görmesi Ders4:GUI OLUSTURMA Yrd. Doç. Dr. Serap KAZAN.
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
BİLGİSAYAR PROGRAMLAMA Ders 6: Diziler Yrd. Doç. Dr. Altan MESUT Trakya Üniversitesi Bilgisayar Mühendisliği.
3. HAFTA 03 Mart MATEMATİKSEL İŞLEMLER Aritmetik Islemlerde Öncelik Durumu.
Merkezi İşlem Birimi (CPU) Girilen bilgilerin işlendiği ve sonuçların üretildiği birimdir. Gelen bilgilerin hangi birime gideceğine işlemci karar verir.
Lineer Cebir (Matris).
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İLGİSAYAR PROGRAMLAMA DERSİ 6. DERS NOTU Konu: Matlab’ de Diziler ve Matrisler.
Fonksiyonlar ve Diziler
MATLAB R2013’e Giriş.
BİLGİSAYAR PROGRAMLAMA Ders 6: Diziler
BM-103 Programlamaya Giriş Güz 2016 (3. Sunu)
BM-103 Programlamaya Giriş Güz 2016 (8. Sunu)
BİLGİSAYAR PROGRAMLAMA Ders 6: Diziler
BM-103 Programlamaya Giriş Güz 2016 (5. Sunu)
BM-103 Programlamaya Giriş Güz 2016 (7. Sunu)
C Sharp 9. hafta - dIZILER.
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
5.1 POLİNOMİNAL REGRESSİYON
Problem Çözme ve Algoritmalar
3. HAFTA.
4. HAFTA.
NİŞANTAŞI ÜNİVERSİTESİ
Sunum transkripti:

BM-103 Programlamaya Giriş Güz 2016 (4. Sunu) (Yrd. Doç. Dr. Deniz Dal)

HATA BULMA VE DÜZELTME HATA AYIKLAMA

PROGRAMLARIMIZI ÇALIŞTIRMA Yazdığımız programlar ya hiç çalışmazlar ya da çalışırlar ama beklediğimiz sonuçları üretmezler. Yazdığımız bir program çalışmaz ise eğer bize bunun nedenlerini komut penceresine hatalı bölümlere ait satır ve sütun bilgilerini basarak bildirir. Ayrıca MATLAB bizlere programlarımızı yazdığımız editörün sağ tarafında turuncu çizgiler şeklinde muhtemel hatalar hakkında ipuçları da verir.

HATA AYIKLAMA (DEBUGGING) NE UMUYORDUM NE BULDUM? m-dosyası editörünün hata ayıklamaya (debugging) yarayan fonksiyonlarını ve calışma alanı (workspace) penceresini kullanarak çalışan programınızdaki (!! BEKLEDİĞİNİZ GİBİ ÇALIŞMAYAN !!) hataları bulabilirsiniz. Bunun için herhangi bir program satırına kesme noktası (breakpoint) koymalı ve programınızı F10 tuşu ile satır satır işletmelisiniz. (Derste bu konuyu özetleyen canlı bir uygulama yapılacak.)

HATA AYIKLAMA Hata Ayıklama modundan komut satırında dbquit komutunu işleterek çıkabilirsiniz. Ayrıca m-dosyasının içerisindeki kesme noktasını üzerini tıklayarak kaldırmalısınız. K>>dbquit >>

PROGRAMLAMAYI KOLAYLAŞTIRAN KULLANIMA-HAZIR BAZI MATLAB FONKSİYONLARI

MATLAB’İN SAYI YUVARLAMA FONKSİYONLARI MATLAB’in ondalıklı sayıları yuvarlama amacıyla sıklıkla kullanılan 4 adet hazır fonksiyonu vardır. Bunlar: fix round ceil floor

fix(x) Kendisine parametre (argüman) olarak aldığı x ondalıklı sayısını 0 (Sıfır) yönünde karşılaştığı ilk tam sayıya yuvarlar.

round(x) Kendisine parametre (argüman) olarak aldığı x ondalıklı sayısını kendisine en yakın tam sayıya yuvarlar.

ceil(x) Kendisine parametre (argüman) olarak aldığı x ondalıklı sayısını pozitif sonsuz yönünde karşılaştığı ilk tam sayıya yuvarlar.

floor(x) Kendisine parametre (argüman) olarak aldığı x ondalıklı sayısını negatif sonsuz yönünde karşılaştığı ilk tam sayıya yuvarlar.

BİR SAYININ TAM SAYI VEYA ONDALIKLI SAYI OLUP OLMADIĞININ ARAŞTIRILMASI Bir sayı tam sayı ise sayının kendisi sayının yuvarlanmışına eşittir. Bir sayı yuvarlanmışına eşit değilse ondalıklı bir sayıdır.

UYGULAMA input komutu ile kullanıcıdan klavye yoluyla aldığı sayı bir tam sayı ise ekrana girilen sayı tam sayıdır aksi takdirde girilen sayı ondalıklı sayıdır uyarısını basan bir MATLAB düzyazı m-programı yazınız.

mod FONKSİYONU İLE KALAN BULMA mod(x,y) x sayısının y sayısına bölümünden kalanı verir. x=y*bölüm+kalan x=y*fix(x/y)+mod(x,y)

BİR SAYININ ÇİFT SAYI VEYA TEK SAYI OLUP OLMADIĞININ ARAŞTIRILMASI Bir sayı ikiye tam olarak bölünebiliyorsa yani sayının ikiye bölümünden kalan sıfırsa bu sayı bir çift sayıdır. Bir sayının ikiye bölümünden kalan 1 ise bu sayı bir tek sayıdır.

UYGULAMA input komutu ile kullanıcıdan klavye yoluyla aldığı sayı bir çift sayı ise ekrana girilen sayı çiftdir aksi takdirde girilen sayı tekdir uyarısını basan bir MATLAB düzyazı m-programı yazınız.

rand FONKSİYONU RASTGELE SAYI ÜRETİMİ rand(n,m) fonksiyonu MATLAB’de nxm boyutunda ve elemanları rastgele sayılar olan bir matris oluşturur. Oluşturulan bu rastgele sayılar 0 ile 1 arasındadır ve düzgün dağılımlıdır. Üretilmek istenen matris kare bir matris ise yani n satır sayısı, m sütun sayısına eşit ise rand(n,n) yerine sadece rand(n) kullanılabilir. 0 ile 1 arasında rastgele ondalıklı bir skaler sayı üretmek için ise rand(1) fonksiyonunun kullanımı yeterlidir. Rastgele sayılardan oluşan bu matrisin tüm elemanlarını k gibi bir sayı ile çarparak sayıları 0 ile k aralığına çekebiliriz. Ondalıklı sayılardan oluşmuş bir matrisin elemanlarını yuvarlayıp tamsayı yapmak için herhangi bir yuvarlama fonksiyonunu, mesela round fonksiyonunu kullanabiliriz.

AŞAĞIDAKİ MATLAB DEYİMLERİ KOMUT PENCERESİNDE ÇALIŞTIRILDIKLARINDA NASIL ÇIKTILAR ÜRETİRLER? >> a=rand(1,10) >> b=fix(rand(3,5)) >> c=round(40*rand(5,3)) >> d=40*round(rand(5,3)) >> e=round(10+40*rand(5,3)) >> f=10+40*round(rand(5,3)) >> g=round(50+250*rand(3,4)) >> h=round(1000*rand(1))

zeros FONKSİYONU İLE SADECE 0’LAR İÇEREN BİR MATRİSİN OTOMATİK OLARAK OLUŞTURULMASI zeros(n,m) fonksiyonu nxm boyutunda (n satırlı ve m sütunlu) ve her bir elemanı 0 olan bir matris üretmek amacıyla kullanılır. Üretilmek istenen matris kare bir matris ise yani n satır sayısı, m sütun sayısına eşit ise zeros(n,n) yerine sadece zeros(n) kullanılabilir. >> zeros(1,3) >> zeros(3,1) >> zeros(4,4) >> zeros(4) >> zeros(3,5) zeros(3,5) deyimi acaba fix(rand(3,5)) deyimi ile aynı sonucu üretir mi?

ones FONKSİYONU İLE SADECE 1’LER İÇEREN BİR MATRİSİN OTOMATİK OLARAK OLUŞTURULMASI ones(n,m) fonksiyonu nxm boyutunda (n satırlı ve m sütunlu) ve her bir elemanı 1 olan bir matris üretmek amacıyla kullanılır. Üretilmek istenen matris kare bir matris ise yani n satır sayısı, m sütun sayısına eşit ise ones(n,n) yerine sadece ones(n) kullanılabilir. >> ones(1,3) >> ones(3,1) >> ones(4,4) >> ones(4) >> ones(3,5) ones(3,5) deyimi acaba ceil(rand(3,5)) deyimi ile aynı sonucu üretir mi?