Algoritma Analizi Big O
|
|
- Asli Yasin
- 5 yıl önce
- İzleme sayısı:
Transkript
1 Algoritma Analizi Big O 0 {\} /\ Suhap SAHIN Onur GÖK
2 Giris Verimlilik Karsılastırma
3 Giris Hangisi daha iyi? Hangi kritere göre?
4 Giris Hangisi daha iyi? Hangi kritere göre?
5 Giris
6 Giris?
7 Verimin ölçülmesi Çalısma Zamanı Bellek kullanımı
8 Verimin ölçülmesi insan maliyeti
9 Verimin hesaplanması Çalısma Süresi Karmasıklık Parametre sayısı X (artım) Çalısma süresi Çalısma süresi karsılastırma iki farklı bilgisayar Aynı bilgisayar farklı zaman Kullanılan veri Gerekli islem miktarı
10 Verim hesaplama Veri, bilgisayar ve gerçeklestirime baglı Matematiksel bir analiz Kıyaslama Algoritma Analizi
11 Algoritma Analizi Matematiksel ifadesi nedir? Temel hesap birimi kaç adet yapılmalı? n f(n) Parametre sayısı Verimlilik n T(n) Çalısma süresi S(n) Bellek gereksinimi
12 Çalısma Süresi Hesabı Çalısma Süresi (Tn): Algoritmanın belirli bir isleme (Temel hesap birimi) kaç kez gereksinim duydugunu gösteren bagıntıdır. Temel hesap birimi: Programlama dilindeki deyimler Döngü sayısı Toplama islem sayısı Dosyaya erisim sayısı Atama sayısı
13 ÇSH: Aritmetik Ortalama float bulorta(int A[ ],int n){ 2 float ortalama, toplam=0; 3 int k; 4 for (k=0; k<n;k++) 5 toplam +=A[k]; // döngü içinde gerçekleşen işlem 6 ortalama=toplam/n; 7 return ortalama; 8 }
14 ÇSH: Aritmetik Ortalama Temel Hesap Birimi islem tekrarı Toplam,,,(n+),n 2n+2 float bulorta(int A[ ],int n){ 2 float ortalama, toplam=0; 3 int k; 4 for (k=0; k<n;k++) 5 toplam +=A[k]; n n 6 ortalama=toplam/n; 7 return ortalama; 8 } T(n)=3n+4
15 ÇSH: En Küçük eleman int bulenkucuk(int A[], int n){ 2 int enkucuk; 3 int k; 4 enkucuk=a[0]; 5 for (k=0; k<n;k++) 6 if(a[k]<enkucuk) 7 enkucuk=a[k]; 8 return enkucuk; 9 }
16 ÇSH: En Küçük eleman Temel Hesap Birimi islem tekrarı Toplam,,,n,(n+) 2n int bulenkucuk(int A[], int n){ 2 int enkucuk; 3 int k; 4 enkucuk=a[0]; 5 for (k=0; k<n;k++) 6 if(a[k]<enkucuk) n- n- 7 enkucuk=a[k]; n- n- 8 return enkucuk; 9 } T(n)=4n
17 ÇSH: Matris Toplama void toplammatris(int A[2][2], int B[2][2]){ 2 int C[2][2]; 3 int i,j; 4 for(i=0;i<2;i++) 5 for(j=0;j<2;j++) 6 7 C[i][j]=A[i][j]+B[i][j]; }
18 ÇSH: Matris Toplama Temel Hesap Birimi tekrarı Toplam,,,n,(n+) 2n+2,, n*(2m+2) 2nm+2n n*m nm void toplammatris(int A[2][2], int B[2][2]){ 2 int C[2][2]; 3 int i,j; 4 for(i=0;i<2;i++) 5 for(j=0;j<2;j++) 6 7 islem C[i][j]=A[i][j]+B[i][j]; } T(n)=3nm+4n+2
19 ÇSH: Faktöriyel Hesabı int faktoriyel(int n){ } if(n<=) return ; else return (n*faktoriyel(n-));
20 ÇSH: Faktöriyel Hesabı Temel Hesap Birimi tekrarı Toplam n n n- n- int faktoriyel(int n){ 2 if(n<=) 3 return ; 4 else 5 6 islem return (n*faktoriyel(n-)); } T(n)=2n
21 Karmasiklik Karmasıklıgı ifade edebilmek için matematiksel ifadeler kullanılmaktadır. Küçük-o (small-o) Büyük-O (big-o, veya big-oh diye de geçer) Teta (Theta Θ, sadece büyük tetadan bahsedebiliz) Büyük omega (big-ω ) Küçük omega(small-ω )
22 Lineer Döngü Asagıdaki kod kaç defa döner: i= loop( i <= 000 ) (loop body) i=i+ end loop
23 Logaritmik Döngü Çarpım Döngüsü Bölüm Döngüsü i= loop( i <= 000 ) (loop body) i=i*2 end loop i = 000 loop( i >= ) (loop body) i=i/2 end loop
24 Logaritmik Döngü Çarpım çarpım: bölüm: 2iterasyon < / 2iterasyon >= Bölüm iterasyon i iterasyon i çıkıs 024 çıkıs 0
25 iç içe döngüler Karesel (Quadratic) Bagımlı Karesel (Dependent Quadratic) Lineer Logaritmik (Linear Logarithmic)
26 Karesel i= loop( i <= 0 ) j= loop( j <= 0 ) (loop body) j=j+ end loop i=i+ end loop
27 Bagımlı Karesel i= loop( i <= 0 ) j= loop( j <= i ) (loop body) j=j+ end loop i=i+ end loop
28 Lineer Logaritmik i= loop( i <= 0 ) j= loop( j <= 0 ) (loop body) j=j*2 end loop i=i+ end loop
29 Big O Gösterimi f(n) fonksiyonundan O(n) degerini hesaplamak için asagıdaki adımlar gerçeklestirilir: ) Tüm katsayılar yapılır 2) En büyük terim alınır, digerleri gözardı edilir. Terimlerin küçükten büyüge sırası asagıdaki gibidir: sabit log2n n nlog2n n2 n3 nk 2n n!
30 Big O Gösterimi
31 Big O Gösterimi
32 Big O Gösterimi Big O Degisim sekli O() Sabit, degismiyor O(log n) Logaritmik artıyor O(n) Dogrusal artıyor O(n log n) Dogrusal çarpanlı logaritmik O(n2) Karesel artıyor O(n3) Kübik artıyor O(2n) iki tabanında üssel artıyor O(0n) On tabanında üssel artıyor O(n!) Faktöriyel olarak artıyor
33 Big O Gösterimi Lineer Döngü i= loop( i <= 000 ) (loop body) i=i+ end loop Logaritmik Döngü //Çarpım Döngüsü i= loop( i < 000 ) (loop body) i=i*2 end loop 2iterasyon<000 f(n)=n/2 => f(n)=n => O(n) 000/2iterasyon>= //Bölüm Döngüsü i = 000 loop( i >= ) (loop body) i=i/2 end loop 2i=n => f(n)=log2n O(log n)
34 Big O Gösterimi // Karesel i= loop( i <= 0 ) j= loop( j <= 0 ) (loop body) j=j+ end loop i=i+ end loop f(n)=n*n => O(n2) // Bağımlı Karesel i= loop( i <= 0 ) j= loop( j <= i ) (loop body) j=j+ end loop i=i+ end loop f(n)=[n*(n+)]/2 => O(n2) // Lineer Logaritmik i= loop( i <= 0 ) j= loop( j <= 0 ) (loop body) j=j*2 end loop i=i+ end loop f(n)=n*log2n O(n log n) :
35 Büyük O Gösterimi Big O : her seyin ters gittigi durum
36 Büyük O Gösterimi Algoritmanın büyüme katsayısı
37 Büyük O Gösterimi
38 Sabit Zaman O() Sana pepsi veriyorum
39 Sabit Zaman O() char *icecekler[4]={"kola","sprite","pepsi","fanta"}; char* icecek =icecekler[2]; Sana pepsi veriyorum
40 Lineer Zaman O(N) ilk içecek pepsi mi? ikinci içecek pepsi mi? üçüncü içecek pepsi mi? dördüncü içecek pepsi mi? Buldum
41 Lineer Zaman O(N) #include <stdio.h> int icecekvarmi(char *istenilen, char *icecekler[]){ char* esya; int i=0; for(i=0;i<4;i++){ esya = esyalar[i]; if(esya == istenilen) return ; } return 0; } int main() { char *icecekler[4]={"kola","sprite","pepsi","fanta"}; int gelen = icecekvarmi("kola",esyalar); if(gelen) printf("buldum :)"); else printf("bulamadım :("); return 0;
42 Logaritmik Zaman O(log N) Sayı ile 9 arasında tahmin et Sayı 4? Degil Sayı 4 den küçük? Evet
43 Logaritmik Zaman O(log N)
44 Logaritmik Zaman O(log N) int find(int intarray[],int MAX, int data) { int low= 0; int high= MAX-; int mid= 0; while(low<=high){ mid=(low+high)/2; if(intarray[mid]==data){ return mid; if(intarray[mid]>data){ high=mid-; else low=mid+; } return -; }
45 Üstel Zaman O(n^2)
46 Üstel Zaman O(n^2)
47 Üstel Zaman O(n^2) void sort(int intarray[],int MAX) { int temp,i,mov; for(mov=0; mov<max-; mov++) { for(i=0; i<max--mov; i++) { if(intarray[i]>intarray[i+]){ temp=intarray[i]; intarray[i]=intarray[i+]; intarray[i+]= temp; } } } }
48 Sorular
ALGORİTMA ANALİZİ. Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Bölümü
ALGORİTMA ANALİZİ Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Bölümü 2 Yürütme Zamanı (Running Time) Algoritmanın belirli bir işleme veya eyleme kaç kez gereksinim duyulduğunu gösteren bağıntıdır ve
DetaylıAlgoritma Analizi. Özelliklerinin analizi Algoritmanın çalışma zamanı Hafızada kapladığı alan
Karmaşıklık Giriş 1 Algoritma Analizi Neden algoritmayı analiz ederiz? Algoritmanın performansını ölçmek için Farklı algoritmalarla karşılaştırmak için Daha iyisi mümkün mü? Olabileceklerin en iyisi mi?
DetaylıYZM ALGORİTMA ANALİZİ VE TASARIM DERS#2: ALGORİTMA ANALİZİ
YZM 3207- ALGORİTMA ANALİZİ VE TASARIM DERS#2: ALGORİTMA ANALİZİ Algoritma Analizi Çerçevesi Algoritma Analizinde Göz Önünde Bulundurulması Gerekenler Neler? Algoritmanın Doğruluğu (Correctness) Zaman
DetaylıYrd. Doç. Dr. A. Burak İNNER Bilgisayar Mühendisliği
Yrd. Doç. Dr. A. Burak İER Bilgisayar Mühendisliği Algoritma Analizi İçerik: Temel Kavramlar Yinelemeli ve Yinelemesiz Algoritma Analizi Asimptotik otasyonlar Temel Kavramlar Algoritma: Bir problemin çözümüne
DetaylıAlgoritma Geliştirme ve Veri Yapıları 1 Temel Algoritma Kavramları. Mustafa Kemal Üniversitesi
Algoritma Geliştirme ve Veri Yapıları 1 Temel Algoritma Kavramları Giriş 1) Algoritma geliştirme üzerine temel kavramlar 2) Veri modelleri 3) Veri yapıları 4) Algoritma veya yazılım şekilsel gösterimi
DetaylıYZM 2116 Veri Yapıları
YZM 2116 Veri Yapıları Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği BÖLÜM - 2 Bu bölümde, Algoritma Analizi, Çalışma Zamanı Analizi
DetaylıVERİ YAPILARI DERS NOTLARI BÖLÜM 2 ALGORİTMA ANALİZİ. Yard. Doç. Dr. Deniz KILINÇ
VERİ YAPILARI DERS NOTLARI BÖLÜM 2 ALGORİTMA ANALİZİ Yard. Doç. Dr. Deniz KILINÇ CELAL BAYAR ÜNİVERSİTESİ, YAZILIM MÜHENDİSLİĞİ 2015-2016 1. ALGORİTMA TANIMI Verilen herhangi bir sorunun çözümüne ulaşmak
DetaylıYZM ALGORİTMA ANALİZİ VE TASARIM DERS#3: ALGORİTMA ANALİZİ#2
YZM 3207- ALGORİTMA ANALİZİ VE TASARIM DERS#3: ALGORİTMA ANALİZİ#2 Özyineli Olmayan (Nonrecursive) Algoritmaların Matematiksel Analizi En büyük elemanı bulma problemi En Büyük Elemanı Bulma Problemi Girdi
DetaylıALGORİTMA İ VE PROGRAMLAMA
ALGORİTMA İ VE PROGRAMLAMA II Öğr.Gör.Erdal GÜVENOĞLU Hafta 2 Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü ALGORİTMA ANALİZİ 2 Neden algoritmayı analiz ederiz? Algoritmanın performansını ölçmek
DetaylıEastern Mediterranean University Faculty of Arts & Sciences -- Department Of Mathematics BİLG213 BİLGİSAYAR PROGRAMLAMAYA GİRİŞ
Eastern Mediterranean University Faculty of Arts & Sciences -- Department Of Mathematics BİLG213 BİLGİSAYAR PROGRAMLAMAYA GİRİŞ DÖNEM SONU SINAVI GÜZ 2009-2010 13 Ocak 2010, Sınav Süresi: 120 dakika. İsim
DetaylıBİL-341 ALGORİTMALAR BÜYÜK O NOTASYONU AHMET ATAKAN 0904.01036. atakanahmet@hotmail.com KIRGIZİSTAN-TÜRKİYE MANAS ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ
BİL-341 ALGORİTMALAR BÜYÜK O NOTASYONU AHMET ATAKAN 0904.01036 atakanahmet@hotmail.com KIRGIZİSTAN-TÜRKİYE MANAS ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ BİŞKEK 2012 Ahmet Atakan
DetaylıAlgoritmalar, Akış Şemaları ve O() Karmaşıklık Notasyonu
Algoritmalar, Akış Şemaları ve O() Karmaşıklık Notasyonu Öğr. Gör. M. Ozan AKI r1.0 Algoritmalar (Algorithms) Algoritma, bir problemin çözümünü sağlayan ancak deneme-yanılma ve sezgisel çözüme karşıt bir
Detaylı1. Her marka için 3 aylık satış toplamı nedir? (Tablodaki satır toplamları)
Çok Boyutlu Diziler gelecegiyazanlar.turkcell.com.tr/konu/android/egitim/android-101/cok-boyutlu-diziler Kategori : Mobil Lisans : Creative Commons (by-nc-sa) En son 28.04.2016 tarihinde güncellendi Yazar
Detaylıf(x) ve g(x) reel sayılarda tanımlı iki fonksiyon olmak üzere, x > k olacak şekilde bir k vardır öyle ki,
Algoritma Karmaşıklığı ve Büyük O Gösterimi (Big O Notation) Yazdığımız bir algoritmanın doğru çalıştığından emin olmakla birlikte bu algoritmayı, daha önce yazılmış ve aynı sonucu veren başka algoritmalarla
DetaylıAdı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak.
Selçuk Üniversitesi Mühendislik Fakültesi Harita Mühendisliği Bölümü ra Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :13.04.2017 60 dak. Dikkat!!! Soru kitapçığında ve cevap
DetaylıELN1002 BİLGİSAYAR PROGRAMLAMA 2
ELN1002 BİLGİSAYAR PROGRAMLAMA 2 SIRALAMA ALGORİTMALARI Sunu Planı Büyük O Notasyonu Kabarcık Sıralama (Bubble Sort) Hızlı Sıralama (Quick Sort) Seçimli Sıralama (Selection Sort) Eklemeli Sıralama (Insertion
DetaylıO NOTASYONU. Abdullah Gazi Emre DAĞLI 0804.01026
O NOTASYONU Abdullah Gazi Emre DAĞLI 0804.01026 Program Çalışma Hızı ve Bellek Gereksinimi Programın çalışma hızı karmaşıklıkla ifade edilir; bu kavram zaman birimiyle ifade edilmeyip doğrudan işlem adedi
DetaylıVeri Yapıları ve Algoritmalar
Veri Yapıları ve Algoritmalar Veri Yapıları ve Modelleri 6 Algoritma Algoritma, bir problemin çözümünde izlenecek yol anlamına gelir. Algoritma, bir programlama dilinde (Java, C++, C# gibi) ifade edildiğinde
DetaylıAlgoritmalar ve Karmaşıklık
Algoritmalar ve Karmaşıklık Ders 11 Algoritma Ayrık matematikte karşılaşılan bir çok problem sınıfı mevcuttur. Örneğin, verilen tamsayı grubu içindeki en büyük olanının bulunması, verilen bir kümenin bütün
DetaylıBil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi
Bil101 Bilgisayar Yazılımı I Bilgisayar Yüksek Mühendisi Editör Disk 1)Kaynak kodlar editör aracılığı ile oluşturulur. (.c) Kaynak dosya Önişleyici Disk 2)Önişleyici kodlar içerisindeki ilk işleme işini
DetaylıAlgoritmaların Karşılaştırılması. Doç. Dr. Aybars UĞUR
Algoritmaların Karşılaştırılması Doç. Dr. Aybars UĞUR Giriş Bir programın performansı genel olarak programın işletimi için gerekli olan bilgisayar zamanı ve belleğidir. Bir programın zaman karmaşıklığı
DetaylıYMT219 Veri Yapıları. Yrd.Doç.Dr. Erkan TANYILDIZI
YMT219 Veri Yapıları Yrd.Doç.Dr. Erkan TANYILDIZI 1 2 Ders Kitapları ve Yardımcı Kaynaklar Veri Yapıları ve Algoritmalar Dr. Rifat ÇÖLKESEN, Papatya yayıncılık Data Structures and Problem Solving Using
DetaylıBil Hafta Çalışma Soruları (Yanıtlar)
Bil 105 9.Hafta Çalışma Soruları (Yanıtlar) SORU 1. Aşağıdaki programı koşturmadan çıktısını bulunuz. Nedenini söyleyiniz. #include void main() { int i = 0; for (i = 0; i < 5; i++) if (i < 4)
DetaylıC ile Uygulamalar 1 - Cevaplar
C ile Uygulamalar 1 - Cevaplar Cevap-1: //Soru 1 const int PI=3; //#define PI 3 int alan,r; printf("dairenin Yaricapini (r) Giriniz:"); scanf("%d",&r); alan=pi*r*r; //Dairenin alanını hesaplama formülü.
DetaylıBMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler
BMÜ-111 Algoritma ve Programlama Bölüm 5 Tek Boyutlu Diziler Yrd. Doç. Dr. İlhan AYDIN 1 Problem 100 adet sayı okumak istediğimizi düşünelim. Bu sayıların ortalaması hesaplanacak ve sayıların kaç tanesinin
DetaylıYMT219 Veri Yapıları. Yrd.Doç.Dr. Erkan TANYILDIZI
YMT219 Veri Yapıları Yrd.Doç.Dr. Erkan TANYILDIZI 1 2 Ders Kitapları ve Yardımcı Kaynaklar Veri Yapıları ve Algoritmalar Dr. Rifat ÇÖLKESEN, Papatya yayıncılık Data Structures and Problem Solving Using
DetaylıBİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ
BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ Yrd.Doç.Dr. Emel ARSLAN earslan@istanbul.edu.tr C Program Akış Kontrol Yapıları Kontrol Komutları Normal şartlarda C dilinde bir programın çalışması, komutların
Detaylı3.Hafta Master Teorem ve Böl-Fethet Metodu
1 3.Hafta Master Teorem ve Böl-Fethet Metodu 2 Ana Metod (The Master Method) Ana method aşağıda belirtilen yapıdaki yinelemelere uygulanır: T(n) = at(n/b) + f (n), burada a 1, b > 1, ve f asimptotik olarak
DetaylıSınav tarihi : Süre : 60 dak. c) En başta #include<stdio.h> yazılmamıştır. c) zt d) Pi e) X0
Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Yıliçi Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 14.04.2015 Süre : 60 dak. 1. Tür dönüşümleri... olmak üzere iki
DetaylıGenel Programlama I
Genel Programlama I 30.09.2010 1 Genel Programlama I Ders İçeriği Programlamaya giriş ve algoritma kavramları Basit ve karmaşık veri tipleri Program kontrol komutları (Döngü ve şart yapıları) Diziler ve
DetaylıF(A, N, K) // A dizi; N, K integer if N<0 then return K; if A[N]>K then K = A[N]; return F(A, N-1, K);
2009-2010 BAHAR DÖNEMİ MC 689 ALGORİTMA TASARIMI ve ANALİZİ I. VİZE ÇÖZÜMLERİ 1. a) Böl ve yönet (divide & conquer) tarzındaki algoritmaların genel özelliklerini (çalışma mantıklarını) ve aşamalarını kısaca
DetaylıALGORİTMA ANALİZİ. Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Bölümü
ALGORİTMA ANALİZİ Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Bölümü 2 Özyinelemeler veya artık teknik Türkçeye girmiş olan rekürsiflik en çok duyulan fakat kullanımında zorluklar görülen tekniklerdendir.
DetaylıGiris {\} /\ Suhap SAHIN Onur GÖK
Giris 0 \ /\ Suhap SAHIN Onur GÖK Fonksiyon C: Ana Fonksiyon(main) main() main() C: Ana Fonksiyon(main) main() main() C: Ana Fonksiyon(main) Giris? main() Çıkıs main() C: Ana Fonksiyon(main) void main()
Detaylıİstanbul Teknik Üniversitesi IEEE Öğrenci Kolu DİZİLER
DİZİLER Dizi Nedir? Aynı türden nesnelerin oluşturduğu, bellekte bitişik bir biçimde bulunan veri yapısına dizi denir.mesela alfabe diye bir dizi tanımlarız, harfleri a,b,c,d... diye sıralarız.dizinin
DetaylıBLM111 Programlama Dilleri I. Hafta 10 Diziler. Yrd. Doç. Dr. Caner ÖZCAN
BLM111 Programlama Dilleri I Hafta 10 Diziler Yrd. Doç. Dr. Caner ÖZCAN Diziler Bilgisayarlar yardımıyla yapılan işlemlerde, çok sayıda veri girilmesi ve girilen verilerin işlenerek belirli bir sistematiğe
DetaylıSınav tarihi : Süre : 60 dak. a) ABCDE b) BCDE c) ABCD d) kod hatalı e) BCD
Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Yıliçi Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 13.04.2015 Süre : 60 dak. 1. Hangisi gerçek sayı değişmezi değildir?
DetaylıALGORİTMA VE PROGRAMLAMA I DERS NOTU#10
ALGORİTMA VE PROGRAMLAMA I DERS NOTU#10 YZM 1105 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Giriş Esnek Argümanlı Fonksiyonlar main() Fonksiyonuna Parametre Aktarımı
DetaylıSınav tarihi : Süre : 60 dak. a) strstr b) strchr c) strcat d) strcpy e) strlen. a) b) d) e) 0
Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Bitirme Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 01.06.2017 Süre : 60 dak. 1. t değişkeni hakkında aşağıdakilerden
DetaylıAlgoritma Nedir? Algoritma
Algoritma Nedir? Algoritma Bir problemin çözümü için geliştirilmiş özel metot Girdileri çıktılara dönüştüren sıralı hesaplama adımları Tanımlanmış bir problemin çözümü için kullanılan araç «Bir problemin
DetaylıAlıştırma 1: Yineleme
Alıştırma 1: Yineleme Alıştırma 2: Yineleme H10->H2 çevrimini yapınız 7 2 1 3 2 1 1 1 2 0 Hafta 3: Yineleme Alıştırmaları(1) E1. (44/174) S değerini yineleme kullanarak hesap ediniz S = 1 + 2 + 3 + n Hafta3:
DetaylıALGORİTMA VE PROGRAMLAMA I DERS NOTU#8
ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8 YZM 1105 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi 6. BÖLÜM 2 Çok Boyutlu Diziler Çok Boyutlu Dizi 3 Bir dizi aşağıdaki gibi bildirildiğinde
DetaylıStruct VE GÖSTERİCİLER FONKSİYONLARDA STRUCT KULLANIMI Programlama dilleri hafta -
BİLECİK ŞEYH EDEBALİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ Struct VE GÖSTERİCİLER FONKSİYONLARDA STRUCT KULLANIMI Programlama dilleri 1-14. hafta - Araş. Gör. Nesibe YALÇIN
DetaylıBİLGİSAYAR PROGRAMLAMA. Algoritma ve Akış Şemaları
BİLGİSAYAR PROGRAMLAMA Algoritma ve Akış Şemaları Algoritma tanımı Algoritma özellikleri Algoritma tasarımı Akış şemaları Dallanma simgeleri Döngü simgeleri Akış şeması tasarımı Akış şeması örnekleri Konu
DetaylıBLM-111 PROGRAMLAMA DİLLERİ I. Ders-10 Diziler. Yrd. Doç. Dr. Ümit ATİLA
BLM-111 PROGRAMLAMA DİLLERİ I Ders-10 Diziler Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Diziler Bilgisayarlar yardımıyla yapılan işlemlerde, çok sayıda veri
DetaylıFonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) {
Fonksiyonlar Kendi içinde bağımsız olarak çalışabilen ve belli bir işlevi yerine getiren program modülleridir. C programları bu modüllerden (fonksiyonlar) oluşurlar. Fonksiyonların yazılmasındaki temel
DetaylıVERİ YAPILARI VE PROGRAMLAMA (BTP104)
VERİ YAPILARI VE PROGRAMLAMA (BTP104) Yazar: Doç.Dr.İ.Hakkı.Cedimoğlu SAKARYA ÜNİVERSİTESİ Adapazarı Meslek Yüksekokulu Bu ders içeriğinin basım, yayım ve satış hakları Sakarya Üniversitesi ne aittir.
Detaylı2 ALGORİTMA VE AKIŞ DİYAGRAMLARI
İÇİNDEKİLER IX İÇİNDEKİLER 1 GİRİŞ 1 Kitabın Amacı 1 Algoritmanın Önemi 2 Bilgisayarın Doğuşu ve Kullanım Amaçları 3 Programlama Dili Nedir? 3 Entegre Geliştirme Ortamı (IDE) Nedir? 4 2 ALGORİTMA VE AKIŞ
Detaylı{\} /\ Suhap SAHIN Onur GÖK
Veri Yapıları ve Algoritmalar 0 {\} /\ Suhap SAHIN Onur GÖK Kaynaklar http://www.papatyabilim.com.tr/veriyapilari_algoritmalar.htm Kaynaklar http://www.tutorialspoint.com/data_structures_algorithms/index.htm
DetaylıDers 5: Temel Kütüphane Fonksiyonlar
Ders 5: Temel Kütüphane Fonksiyonlar Giriş Bu kısımda, C Programlama Dili'nde sık kullanılan ve diğer bölümlerde yararlanacağımız kütüphane fonksiyonlarının bazıları işlenecektir. Kütüphane fonksiyonu
DetaylıBölüm Özeti. Algoritmalar. Fonksiyonların Büyümesi. Algoritmaların Karmaşıklığı. Örnek Algoritmalar Algoritmik Paradigmalar
Bölüm 3 Bölüm Özeti Algoritmalar Örnek Algoritmalar Algoritmik Paradigmalar Fonksiyonların Büyümesi Büyük-O ve diğer gösterimler Algoritmaların Karmaşıklığı Bölüm 3.1 Bölüm Özet Algoritmaların Özellikleri
DetaylıÖzyineleme (Recursion)
Özyineleme tanımlamaları Özyineleme çağırma Tail özyineleme Nontail özyineleme Dolaylı (Indirect) özyineleme İçiçe (Nested) özyineleme Yrd.Doç.Dr. M. Ali Akcayol Kendi kendisini doğrudan veya dolaylı olarak
DetaylıDiziler. Dizi Tanımı Dizi Elemanlarına Değer Atama Diziler ve Göstergeler 2-Boyutlu Diziler
Diziler Diziler Dizi Tanımı Dizi Elemanlarına Değer Atama Diziler ve Göstergeler 2-Boyutlu Diziler Dizi Tanımı Değişkenler aynı anda tek bir değer tutabilen temel değişkenler ve birden fazla değer saklayabilen
DetaylıMatris İşlemleri Uygulaması
Matris İşlemleri Uygulaması Uygulama Konusu Uygulama 3x3 boyutlu matrislerle toplama, çıkarma ve çarpma işlemleri üzerinedir. Toplama İşlemi AA = aa iiii mmmmmm ve BB = bb iiii mmmmmm aynı tipte iki matris
DetaylıDiziler (Arrays) Çok Boyutlu Diziler
Diziler (Arrays) Çok Boyutlu Diziler ÇOK BOYUTLU DİZİLER Birden fazla indis numarası ile elemanlarına ulaşılan dizilere çok boyutlu diziler denir. Bunlardan en sık kullanılanı çift boyutlu dizilerdir.
DetaylıFonksiyonlar. Yrd.Doç.Dr.Bülent Çobanoğlu
Fonksiyonlar Yrd.Doç.Dr.Bülent Çobanoğlu Fonksiyonlar Bir ana program alt programlardan (prosedür, metot, alt yordam veya fonksiyonlardan) oluşabilir. Yapısal programlama dillerinde (Pascal, C, C++, Visual
DetaylıFinal Sınavı Soruları Bahar 2018
Sayfa#1 Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM 2116 Veri Yapıları Dersi Final Sınavı Soruları Bahar 2018 Süre: 70 Dakika Adı ve Soyadı YANIT ANAHTARI Öğrenci Numarası Grubu İmza
DetaylıC++ Dersi: Nesne Tabanlı Programlama
C++ Dersi: Nesne Tabanlı Programlama Bölüm 7: Yapılar Diziler İçerik Yapıların Tanımı Yapılara İlk Değer Atama Yapı Elemanlarına Erişim İç içe Yapılar Yapılar ve Fonksiyonlar 2 Yapılar (structures) içinde
DetaylıC++ Dersi: Nesne Tabanlı Programlama
C++ Dersi: Nesne Tabanlı Programlama Bölüm 6: Diziler İçerik Diziler Dizi Elemanlarına İlk Atama Diziler ve Fonksiyonlar İki Boyutlu Diziler İki Boyutlu Dizi Tanımı İki Boyutlu Dizi Elemanlarına Erişim
DetaylıBaşkent Üniversitesi MühendislikFakültesi BaharYarıyılı YerSıra No BİL 101 Bilgisayar Yazılımı-I Dersi Dönem Sonu MAZERET Sınavı
Başkent Üniversitesi MühendislikFakültesi 2013-2014 BaharYarıyılı YerSıra No BİL 101 Bilgisayar Yazılımı-I Dersi Dönem Sonu MAZERET Sınavı SınavTarihi : 03.06.2015 SınavBaşlamaSaati : 12:00 SınavSüresi
Detaylı/ C Bilgisayar Programlama Final Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak.
Selçuk Üniversitesi Mühendislik Fakültesi Harita Mühendisliği Bölümü Final Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :09.01.2013, 60 dak. Dikkat!!! Soru kitapçığında ve
DetaylıFonksiyonlar (Altprogram)
Fonksiyonlar (Altprogram) C Programlama Dili fonksiyon olarak adlandırılan alt programların birleştirilmesi kavramına dayanır. Bir C programı bir ya da daha çok fonksiyonun bir araya gelmesi ile oluşur.
DetaylıArasınav Sınavı Soruları Güz 2017 Süre: 90 Dakika
Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM 1105- Algoritma ve Programlama I Arasınav Sınavı Soruları Güz 2017 Süre: 90 Dakika Derse Kayıtlı Olduğunuz Grubun Öğretim Üyesini (X) ile
Detaylı/ C Bilgisayar Programlama Yıliçi Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak.
Selçuk Üniversitesi Mühendislik-Mimarlık Fakültesi Harita Mühendisliği Bölümü Yıliçi Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :26.11.2012, 60 dak. Dikkat!!! Soru kitapçığında
Detaylı1 PROGRAMLAMAYA GİRİŞ
İÇİNDEKİLER IX İÇİNDEKİLER 1 PROGRAMLAMAYA GİRİŞ 1 Problem Çözme 1 Algoritma 1 Algoritmada Olması Gereken Özellikler 2 Programlama Dilleri 6 Programlama Dillerinin Tarihçesi 6 Fortran (Formula Translator)
DetaylıIF / ELSE IF / ELSE. Bu deyimler, koşullu işlem yapan deyimlerdir ve daima if deyimi ile başlar, else if veya else ile devam eder.
1. Genel Bilgiler Bu deyimler, koşullu işlem yapan deyimlerdir ve daima if deyimi ile başlar, if veya ile devam eder. if ve tek bir karşılaştırma deyimi olup kullanımı isteğe bağlıdır. Eğer bu koşul olumlu
DetaylıVERİ YAPILARI DATA STRUCTURE GİRİŞ
VERİ YAPILARI DATA STRUCTURE GİRİŞ Veri Yapısı Nedir O Verinin ve bilginin bellekte nasıl organize edildiğini, bellekte tutulma biçimini ifade eder. O Tüm programlama dillerinin, genel olarak, tamsayı,
DetaylıTemel Bilgisayar Programlama Final Sınavı Çalışma Notları
Diziler Temel Bilgisayar Programlama Final Sınavı Çalışma Notları (Dr. Övünç ÖZTÜRK, Dr. Tahir Emre KALAYCI) (İnşaat Mühendisliği ve Gıda Mühendisliği Grupları İçin) Diziler aynı türden bilgileri saklamak
DetaylıBLM 111 ALGORİTMA VE PROGRAMLAMA I
1 BLM 111 ALGORİTMA VE PROGRAMLAMA I ÇOK BOYUTLU DİZİLER, YAPILAR [MULTIDIMENSIONAL ARRAYS, STRUCTURES] ÇOK BOYUTLU DİZİLER Çok boyutlu diziler tanımlayabiliriz. İki boyutta, çok boyutlu diziler bellek
DetaylıTEMPLATES. Binnur Kurt kurt@cs.itu.edu.tr. Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi. C++ ile Nesneye Dayalı Programlama 1
PARAMETRİKÇOKŞEKİLLİLİK: TEMPLATES Binnur Kurt kurt@cs.itu.edu.tr Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi C++ ile Nesneye Dayalı Programlama 1 Sınıf Yapısı Kalıtım Çok Şekillilik Templates
DetaylıKodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.
GİRİŞ Algoritması tasarlanmış (metin olarak yazılmış, sözde kodlarla kodlanmış veya akış diyagramı çizilmiş) bir problemi/işlemi, bilgisayar programlama dillerinden birisiyle kodlamak son derece kolaydır.
DetaylıFinal Sınavı Soruları Güz, Süre: 90 Dakika
Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM 1105- Algoritma ve Programlama I Final Sınavı Soruları Güz, 2018-2019 Süre: 90 Dakika Derse Kayıtlı Olduğunuz Grubun Öğretim Üyesini (X)
DetaylıC PROGRAMLAMA D İ L İ
C PROGRAMLAMA DİLİ Diziler Dizi bir kümedir. Aynı tipteki verilere tek bir isimle erişmek için kullanılır. Bir dizi bildirildikten sonra, dizinin bütün elemanları bellekte peşpeşe saklanır. Bu yüzden dizilere
DetaylıBLM 112- Programlama Dilleri II. Hafta 2 C Programlarının Bellek Düzeni ve Rekürsif (Özyinelemeli) Fonksiyonlar
1 BLM 112- Programlama Dilleri II Hafta 2 C Programlarının Bellek Düzeni ve Rekürsif (Özyinelemeli) Fonksiyonlar Dr. Öğr. Üyesi Caner Özcan Kendi yolculuğumuzu yapmak için buradayız; bu yolculukta kendimiz
DetaylıKarakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır
stringh floath Karakter katarları ile ilgili fonksiyonlar içerir Yerel kayan noktalı sayılar tanımlanır 32 Sorgulama İfadesi - if Deyimi (5 Hafta) Bu deyim sorgulamanın tek basamakta yapılacağı yerlerde
DetaylıKodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.
GİRİŞ Algoritması tasarlanmış (metin olarak yazılmış, sözde kodlarla kodlanmış veya akış diyagramı çizilmiş) bir problemi/işlemi, bilgisayar programlama dillerinden birisiyle kodlamak son derece kolaydır.
DetaylıALGORİTMA VE PROGRAMLAMA II
ALGORİTMA VE PROGRAMLAMA II Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1102 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Dosya İşlemleri (Rastgele Erişim)
DetaylıProgramlama Dilleri. C Dili. Programlama Dilleri-ders08/ 1
Programlama Dilleri C Dili Programlama Dilleri-ders08/ 1 Yapısal Veri Tipleri C dili genişletilebilen bir dildir. Var olan veri tipleri kullanılarak yeni veri tipleri tanımlanıp kullanılabilir. Programlama
DetaylıBil 101 Bilgisayar Yazılımı 1 Çözümlü Sorular Timur Karaçay
Bil 101 Bilgisayar Yazılımı 1 Çözümlü Sorular Timur Karaçay SORU 1: Aşağıdaki programın çıktısını, adım adım izleyerek (trace) bulunuz? #include int f(int x) { if (x
Detaylı8. İŞARETCİLER (POINTERS)
8. İŞARETCİLER (POINTERS) Verilerin bilgisayar hafızasında tutulduğu fiziki alan adres olarak tanımlanabilir. Adres, hem donanımla hem de yazılımla ilişkilidir. Donanımsal açıdan adres bellekte yer gösteren
DetaylıTemel Bilgisayar Bilimleri Ders Notu #4-1. kısım
Nisan 2009 9031150 - Temel Bilgisayar Bilimleri Ders Notu #4-1. kısım Referans: Bugün: 1. Ders Notları. Ders #3 Tekrar Do while ve for döngüleri 1. Tekrar Geçen ders while döngüsü ve seçme kontrol teknikleri
Detaylıwhile(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO
while(), do-while(), for() Döngü (loop) : Bir koşul sağlandığı (true olduğu) sürece bir veya birden çok komutun tekrarlanması işlemidir. Java Döngüler (loops) While() do-while() for ( ) while ( koşul )
DetaylıDİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II
DİZİLER-KATARLAR ALGORİTMA VE PROGRAMLAMA II DİZİLER Dizi, aynı tipteki verilere tek bir isimle erişmek için kullanılan bir kümedir. Bir dizi bildirildikten sonra, dizinin bütün elemanları bellekte peşpeşe
DetaylıALGORİTMA ANALİZİ. Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Bölümü
ALGORİTMA ANALİZİ Cumhuriyet Üniversitesi Bilgisayar Mühendisliği Bölümü 2 Temel Kavramlar Algoritma: Bir problemin çözümünü belirli bir zamanda çözmek için sonlu sayıdaki adım-adım birbirini takip eden
Detaylı1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.
1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız. [10 puan] int param = 30; int result = 300; if (param > 45) result
Detaylı4.Hafta BİL Soruların Çözümleri
4.Hafta BİL 105-02-06 Soruların Çözümleri SORU1. Kullanıcının girdiği bir sayının tek mi, yoksa çift mi olduğunu bulan bir C programı yazınız. Yazdığınız programın algoritmasını yazınız ve akış çizeneğini
DetaylıPROGRAMLAMAYA GİRİŞ FONKSİYONLAR
PROGRAMLAMAYA GİRİŞ FONKSİYONLAR Fonksiyonlar C programlama dili fonksiyon olarak adlandırılan alt programların birleştirilmesi kavramına dayanır. Bir C programı bir ya da daha çok fonksiyonun bir araya
DetaylıÖzyineleme {\} /\ Suhap SAHIN Onur GÖK
Özyineleme 0 {\ /\ Suhap SAHIN Onur GÖK Özyineleme Tavugu yakala Tavugu yakala Tavugu yakala Tavugu yakala Ben yakalarım Özyineleme Kaç kisiyiz Ben ve sonraki Ben ve sonraki Ben ve sonraki Sadece ben Özyineleme
DetaylıDiziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU
Diziler Yrd.Doç.Dr.Bülent ÇOBANOĞLU Dizi (Array) Nedir? Bellekte sürekli yer kaplayan artarda sıralanmış aynı türden verilerin oluşturduğu kümeye dizi (array) denir. Dizi, çok fazla miktardaki tek tip
Detaylı1. 100 elemanlı bir dizide bir sinyalin 1 er saniye aralıklarla ölçülen gerilim değerleri tutulmaktadır. Bu sinyalin tepeden tepeye genliğini,
1. 100 elemanlı bir dizide bir sinyalin 1 er saniye aralıklarla ölçülen gerilim değerleri tutulmaktadır. Bu sinyalin tepeden tepeye genliğini, pozitif tepe genliğini, negatif tepe genliğini ve ortalamasını
DetaylıYZM 2116 Veri Yapıları
YZM 2116 Veri Yapıları Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği Bu bölümde, BÖLÜM - 6 Sıralama(Sort) Algoritmaları 1. Bubble Sort
DetaylıSınav tarihi : Süre : 60 dak.
Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Final Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 31.05.2016 Süre : 60 dak. 1. Ekranda ne görüntülenir? int i =
DetaylıBİL1001 Bilgisayar Bilimlerine Giriş 1
DEÜ Bilgisayar Bilimleri Bölümü BİL1001 Bilgisayar Bilimlerine Giriş 1 Öğr. Gör. Dr. Alper VAHAPLAR 2017 Yaz Okulu Tekrarlı Yapılar Algoritmanın belirli bir kısmının, belirli kere ya da belirli durumlar
DetaylıÖrnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf
İçindekiler 1. Giriş... 1 1.2. c++ Programı Yapısı... 2 1.3.Using Direktifi... 5 Bölüm 2. Veri türleri, değişken kavramı, sabit ve değişken bildirimleri ve c++ da kullanımı 7 2.1. Temel veri türleri...
DetaylıProgramlamaya Giriş. Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi.
Programlamaya Giriş Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi. Programın Yazımında İzleyeceğimiz Adımlar Problemi anla. İhtiyaçları belirle. Problemin
DetaylıALGORİTMA VE PROGRAMLAMA II
ALGORİTMA VE PROGRAMLAMA II Yrd. Doç. Dr. Deniz KILINÇ deniz.kilinc@cbu.edu.tr YZM 1102 Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Genel Bakış 2 Yapılar ve Birlikler enum Deyimi
DetaylıİNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ
İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 1 DERSİ LAB. ÖDEVİ AD SOYAD : TESLİM TARİHİ : OKUL NO : TESLİM SÜRESİ : 1 hafta Ödev No : 5 1. Aşağıdaki programların çıktısı
DetaylıBMT 101 Algoritma ve Programlama I 11. Hafta. Yük. Müh. Köksal Gündoğdu 1
BMT 101 Algoritma ve Programlama I 11. Hafta Yük. Müh. Köksal Gündoğdu 1 C++ Fonksiyonlar Yük. Müh. Köksal Gündoğdu 2 C++ Hazır Fonksiyonlar Yük. Müh. Köksal Gündoğdu 3 C++ Hazır Fonksiyonlar 1. Matematiksel
DetaylıNESNE TABANLI PROGRAMLAMA Final Sınavı Cevapları
Sayfa1 NESNE TABANLI PROGRAMLAMA 25.01.2011 Final Sınavı Cevapları CEVAPLAR 1. A ve C 3x3 boyutlu kare matrislerdir. Bu matrisler için, iken, işlemini gerçekleştirerek C matrisini oluşturan bir C++ programı
Detaylı1 RUBY HAKINDA 1 Ruby nin Gelişim Hikayesi 1 Neden Ruby? 1 Neden Bu Kadar Popüler? 2
İÇİNDEKİLER VII İÇİNDEKİLER 1 RUBY HAKINDA 1 Ruby nin Gelişim Hikayesi 1 Neden Ruby? 1 Neden Bu Kadar Popüler? 2 2 RUBY KURULUMU 3 Windows İçin Ruby Kurulumu 3 Ubuntu ve Debian İçin Ruby Kurulumu 6 Mac
Detaylı