Özyineleme {\} /\ Suhap SAHIN Onur GÖK

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "Özyineleme {\} /\ Suhap SAHIN Onur GÖK"

Transkript

1 Özyineleme 0 {\ /\ Suhap SAHIN Onur GÖK

2 Özyineleme Tavugu yakala Tavugu yakala Tavugu yakala Tavugu yakala Ben yakalarım

3 Özyineleme Kaç kisiyiz Ben ve sonraki Ben ve sonraki Ben ve sonraki Sadece ben

4 Özyineleme

5 Tower of Hanoi Uygulamalar

6 Tree traversals Uygulamalar

7 Özellikler int function(int sayi) { if(sayi < 1) return; function(sayi - 1); printf("%d",sayi); temel durum ilerleme durumu

8 Bellek Kullanımı f(n) f(n-1) f(n-2) f(n-2) f(n-1) f(n)

9 Bellek Kullanımı #include<stdio.h> void yaz(int test) { if (test < 1) return; else { printf("%d ",test); yaz(test-1); printf("%d ",test); return; int main() { int test = 3; yaz(test);

10 Bellek Kullanımı #include<stdio.h> void yaz(int test) { if (test < 1) return; else { printf("%d ",test); yaz(test-1); printf("%d ",test); return; int main() { int test = 3; yaz(test); yaz(3) print 3 yaz(2) print 3 yaz(2) print 2 yaz(1) print 2 yaz(1) print 1 yaz(0) print 1 yaz(0) test < 1

11 Bellek Kullanımı yaz(-1) yaz(3) int fact(int n) { if (n == 100) return 1; else return n*fact(n-1); 3*yaz(2) yaz(2) 2*yaz(1) yaz(1) 1*yaz(0) yaz(0) yaz(1) stack overflow yaz(2) yaz(3)

12 Recursive Vs iteratif Yer yaz(1) yaz(2) yaz(3)

13 Recursive Vs iteratif yaz(3) print 3 Zaman yaz(2) print 3 yaz(2) print 2 yaz(1) print 2 yaz(1) print 1 yaz(0) print 1

14 Recursive Vs iteratif Uygulama

15 Dogrudan Özyineleme function(3) function(2) function(2) print 3 function(1) function(1) int function(int sayi) { print 2 function(0) function(0) if(sayi < 0) return; print 1 0 < 0 function(sayi - 1); printf("%d",sayi);

16 Dolaylı Özyineleme int function(int sayi) { if(sayi < 0) return; function1(sayi - 1); printf("%d ",sayi); function(sayi) function1(sayi-1) print sayi int function1(int sayi) { if(sayi < 0) return; function2(sayi - 1); printf("%d ",sayi); int function2(int sayi) { if(sayi < 0) return; function(sayi - 1); printf("%d ",sayi);

17 Dolaylı Özyineleme int function(int sayi) { if(sayi < 0) return; function1(sayi - 1); printf("%d ",sayi); int function1(int sayi) { if(sayi < 0) return; function2(sayi - 1); printf("%d ",sayi); function(sayi) function1(sayi-1) print sayi function1(sayi-1) function2(sayi-2) print sayi-1 int function2(int sayi) { if(sayi < 0) return; function(sayi - 1); printf("%d ",sayi);

18 Dolaylı Özyineleme int function(int sayi) { if(sayi < 0) return; function1(sayi - 1); printf("%d ",sayi); int function1(int sayi) { if(sayi < 0) return; function2(sayi - 1); printf("%d ",sayi); function(sayi) function1(sayi-1) print sayi function1(sayi-1) function2(sayi-2) print sayi-1 function( ) function2(sayi-2) function(sayi-3) print sayi-2 int function2(int sayi) { if(sayi < 0) return; function(sayi - 1); printf("%d ",sayi); function1(sayi-4) print sayi function1( ) function2(sayi-5) print sayi-1 function2( ) function(sayi-6) print sayi-2

19 Tekil Özyineleme #include<stdio.h> int factorial( int n ){ if ( n <= 1 ){ return 1; else{ return n*factorial(n-1); factorial(n) n*factorial(n-1) int main(){ printf("%d",factorial(4));

20 Tekil Özyineleme #include<stdio.h> int factorial( int n ){ if ( n <= 1 ){ return 1; else{ return n*factorial(n-1); factorial(n) n*factorial(n-1) function(n-1) (n-1)*factorial(n-2) function(n-2) (n-2)*factorial(n-3) int main(){ printf("%d",factorial(4));

21 Faktöriyel factorial(4) 4 factorial(3) 3 factorial(2) 2 factorial(1) 1

22 Faktöriyel factorial(4) 4 factorial(3) 3 factorial(2) 2 factorial(1) 1

23 Faktöriyel factorial(4) 4 factorial(3) 3 factorial(2) 2 factorial(1) 1

24 Faktöriyel factorial(4) 4 factorial(3) 3 factorial(2) 2 1

25 Faktöriyel factorial(4) 4 factorial(3) 3 2

26 Faktöriyel factorial(4) 4 factorial(3) 3 2

27 Faktöriyel 4 factorial(4) 6

28 Faktöriyel 4 factorial(4) 6

29 24 Faktöriyel

30 Kaç Kisiyiz #include<stdio.h> int kackisi( int n ){ if ( n <= 1 ){ printf("sadece ben"); return 1; else{ printf("ben ve sonraki, "); kackisi(n-1); return 1; Kaç kisiyiz int main() { kackisi(3);

31 Kaç Kisiyiz #include<stdio.h> int kackisi( int n ){ if ( n <= 1 ){ printf("sadece ben"); return 1; else{ printf("ben ve sonraki, "); kackisi(n-1); return 1; Kaç kisiyiz Ben ve sonraki Ben ve sonraki Sadece ben int main() { kackisi(3);

32 ikili Özyineleme Fibonacci Sayıları

33 ikili Özyineleme #include<stdio.h> int fib(int n){ if (n <= 1) return n; return fib(n-1) fib(n-2); int main (){ int n = 4; printf("%d", fib(n)); getchar(); return 0; Fibonacci Dizisi 0, 1, 1, 2, 3, 5, 8, 13, 21,... { n; eger n < = 1 f(n) f(n-1) f(n-2); aksi halde

34 ikili Özyineleme #include<stdio.h> int fib(int n){ if (n <= 1) return n; return fib(n-1) fib(n-2); int main (){ int n = 4; printf("%d", fib(n)); getchar(); return 0; Fibonacci Dizisi 0, 1, 1, 2, 3, 5, 8, 13, 21,... { n; eger n < = 1 f(n) f(n-1) f(n-2); aksi halde

35 ikili Özyineleme fib(4) fib(2) fib(3)

36 ikili Özyineleme fib(4) fib(2) fib(3) fib(0) fib(1)

37 ikili Özyineleme fib(4) fib(2) fib(3) fib(0) fib(1)

38 ikili Özyineleme fib(4) fib(2) 0 fib(1) fib(3)

39 ikili Özyineleme fib(4) fib(2) 0 fib(1) fib(3)

40 ikili Özyineleme fib(4) fib(2) 0 fib(1) fib(3)

41 ikili Özyineleme fib(4) fib(2) 0 1 fib(3)

42 ikili Özyineleme fib(4) fib(2) 0 1 fib(3)

43 ikili Özyineleme fib(4) fib(3)

44 ikili Özyineleme fib(4) fib(3)

45 ikili Özyineleme fib(4) 1 fib(3) 0 1 fib(1) fib(2)

46 ikili Özyineleme fib(4) 1 fib(3) 0 1 fib(1) fib(2)

47 ikili Özyineleme fib(4) 1 fib(3) fib(2)

48 ikili Özyineleme fib(4) 1 fib(3) fib(2)

49 ikili Özyineleme fib(4) fib(3) 1 fib(2) fib(0) fib(1)

50 ikili Özyineleme fib(4) fib(3) 1 fib(2) fib(0) fib(1)

51 ikili Özyineleme fib(4) fib(3) 1 fib(2) 0 fib(1)

52 ikili Özyineleme fib(4) fib(3) 1 fib(2) 0 fib(1)

53 ikili Özyineleme fib(4) fib(3) 1 fib(2) 0 fib(1)

54 ikili Özyineleme fib(4) fib(3) 1 fib(2) 0 1

55 ikili Özyineleme fib(4) fib(3) 1 fib(2) 0 1

56 ikili Özyineleme fib(4) fib(3)

57 ikili Özyineleme fib(4) fib(3)

58 ikili Özyineleme fib(4)

59 ikili Özyineleme fib(4)

60 ikili Özyineleme

61 ikili Özyineleme

62 Kuyruk Özyineleme #include<stdio.h> void kuyruk(int n){ if (n < 1) return; else{ printf(" %d\n",n); kuyruk(n-1); return; int main(){ int n = 2; kuyruk(n); kuyruk(2) print 2 kuyruk(1) kuyruk(1) print (1) kuyruk(0) kuyruk(0) 0 < 1

63 Kuyruk Olmadan #include<stdio.h> void kuyruk(int n){ if (n < 1) return; else{ kuyruk(n-1); printf(" %d\n",n); return; int main(){ int n = 2; kuyruk(n); Özyineleme kuyruk(2) kuyruk(1) kuyruk(1) kuyruk(0) print 1 print (1) kuyruk(0) 0 < 1

64 içiçe Özyineleme public int A(int n, int m) { if (n <= 0) return 1; return A(n-1, A(n-1, m-1));

65 Sorular

Özyineleme (Recursion)

Ö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ı

Eln 1002 Bilgisayar Programlama II

Eln 1002 Bilgisayar Programlama II Eln 1002 Bilgisayar Programlama II Recursive Fonksiyonlar Ne ÖĆreneceĆiz? Recursion nedir? Recursive Fonksiyon tanımı Uygulama ve Örnekler Recursive Çözüm Tasarlama Recursion Nedir? Birçok problem, kendisinin

Detaylı

Yigin & Kuyruk {\} /\ Suhap SAHIN Onur GÖK

Yigin & Kuyruk {\} /\ Suhap SAHIN Onur GÖK Yigin & Kuyruk 0 {\ /\ Suhap SAHIN Onur GÖK Yıgın (Stack) son giren ilk çıkan LIFO ilk giren son çıkan Yıgın islemleri(so) ekle push 31 stack overflow 24 31 U U 34 34 3 3 S S Yıgın islemleri(so) al pop

Detaylı

ÖZYİNELEME RECURSION. Yrd. Doç. Dr. Aybars UĞUR

ÖZYİNELEME RECURSION. Yrd. Doç. Dr. Aybars UĞUR ÖZYİNELEME RECURSION Yrd. Doç. Dr. Aybars UĞUR Giriş Kendini doğrudan veya dolaylı olarak çağıran fonksiyonlara özyineli (recursive) fonksiyonlar adı verilir. Özyineleme (recursion), iterasyonun (döngüler,

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ü 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ı

ÖZYİNELEME RECURSION. Doç. Dr. Aybars UĞUR

ÖZYİNELEME RECURSION. Doç. Dr. Aybars UĞUR ÖZYİNELEME RECURSION Doç. Dr. Aybars UĞUR GİRİŞ Kendini doğrudan veya dolaylı olarak çağıran fonksiyonlara özyineli (recursive) fonksiyonlar adı verilir. Özyineleme (recursion), iterasyonun (döngüler,

Detaylı

AVL Agacı {\} /\ Suhap SAHIN Onur GÖK

AVL Agacı {\} /\ Suhap SAHIN Onur GÖK AVL Agacı {\} /\ Suhap SAHIN Onur GÖK AVL (Adel son-vel skiĭ) Landis Agacı AVL Agacı: Dengeli ikili agaç Denge Faktörü Kök isaretçisi A B c D E D E Agaç Veri Modeli Yükseklik Kök (root) A 2 B C 1 D E F

Detaylı

BLM 112- Programlama Dilleri II. Hafta 2 C Programlarının Bellek Düzeni ve Rekürsif (Özyinelemeli) Fonksiyonlar

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ı

2) /* Kullanıcıdan alınan iki sayının obebini alt fonksiyon yardımı ile hesaplayan C programı*/

2) /* Kullanıcıdan alınan iki sayının obebini alt fonksiyon yardımı ile hesaplayan C programı*/ GENEL TEKRAR 1) /*Kullanıcının belirlediği sayı kadar dikdörtgenin kenar bilgilerini kullanıcıdan alan, dikdörtgenlerin alan ve çevresini alt fonksiyon yardımı ile hesaplayan ve sonuçları ekrana yazan

Detaylı

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#3: ALGORİTMA ANALİZİ#2

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ı

Deney 7: Fonksiyon Tanımlama ve Parametre Aktarım Yöntemleri

Deney 7: Fonksiyon Tanımlama ve Parametre Aktarım Yöntemleri Deney 7: Fonksiyon Tanımlama ve Parametre Aktarım Yöntemleri 7.0. Amaç Ve Kapsam Deneyde C dilinde kullanılan fonksiyon tanımlama ve parametre aktarım yöntemleri hakkında bilgi verilecektir. 7.1. Deneyden

Detaylı

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

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ı

7. FONKSİYONLAR. Dönüş_Tipi Fonksiyon_Adı (tip giriş_parametreleri);

7. FONKSİYONLAR. Dönüş_Tipi Fonksiyon_Adı (tip giriş_parametreleri); 1 7. FONKSİYONLAR C/C++ programlama dilinin temelini fonksiyonlar oluşturmaktadır. C/C++ programı fonksiyon ile çalışmasına başlar ve fonksiyon ile çalışmasını bitirir. Bu olmazsa olmaz fonksiyonun ismi

Detaylı

Bölüm 10. Altprogramları Uygulamak

Bölüm 10. Altprogramları Uygulamak Bölüm 10 Altprogramları Uygulamak Altprogramları Uygulamak -- Başlıklar Çağrıların genel anlam analizi Basit altprogramların gerçekleştirilmesi Yığıt dinamik yerel değişkenlerle altprogramları uygulamak

Detaylı

C dilinde if-else yapısı

C dilinde if-else yapısı C dilinde if- yapısı Merhaba arkadaşlar, bu başlık altında sizlere koşullu ifadelerden bahsedeceğim. Peki nedir bu koşullu ifadeler(if, if, )? Bunu bir koşulun gerçekleşmesine bağlı olarak gerçekleşen

Detaylı

Bil Hafta Çalışma Soruları (Yanıtlar)

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ı

Giris {\} /\ Suhap SAHIN Onur GÖK

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ı

Arasınav Sınavı Soruları Güz 2017 Süre: 90 Dakika

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ı

int main(void) { int num = 0; int input = 1; int retval = 0; struct NODE *nodepointer; nodepointer = (struct NODE *)malloc(sizeof(struct NODE));

int main(void) { int num = 0; int input = 1; int retval = 0; struct NODE *nodepointer; nodepointer = (struct NODE *)malloc(sizeof(struct NODE)); #include #include struct NODE { int number; struct NODE *nextpointer; ; void append_node(struct NODE *nodepointer, int num); void display_list(struct NODE *nodepointer); int search_value(struct

Detaylı

{\} /\ Suhap SAHIN Onur GÖK

{\} /\ 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ı

#include<stdio.h> #include<conio.h> #define doktorsayisi 3. typedef struct dr{ int ay1, ay2, ay3, ay4; } doktor; float hesapla(doktor dktr){

#include<stdio.h> #include<conio.h> #define doktorsayisi 3. typedef struct dr{ int ay1, ay2, ay3, ay4; } doktor; float hesapla(doktor dktr){ /* Bir hastanedeki 30 doktorun dört ay boyunca baktığı hasta sayısı dr isimli bir topluluğun üyeleri olarak tanımlanıp, main( ) fonksiyonunda değerleri veriliyor. Dr topluluğunun her bir değerini "hesapla"

Detaylı

Adı Soyadı : Öğrenci No :

Adı Soyadı : Öğrenci No : Adı Soyadı : Öğrenci No : Soru 1 2 3 4 Toplam Not F.Ü TEKNOLOJİ FAKÜLTESİ YAZILIM MÜHENDİSLİĞİ BÖL. YMT111 VİZE SINAVI 2013 2014 Güz (03 Aralık 2013) SORULAR Toplam 4 soru 110 Puan, cevaplarınızı soru

Detaylı

Final Sınavı Soruları Bahar 2018

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ı

Örnek: İki fonksiyondan oluşan bir program. Fonksiyon Tanımı

Örnek: İki fonksiyondan oluşan bir program. Fonksiyon Tanımı Fonksiyonlar Fonksiyon Tanımı Değer Döndürmeyen Fonksiyonlar Değer Döndüren Fonksiyonlar Çok Parametreli Fonksiyonlar Değişken Kapsamları Çok Fonksiyonlu Programlar Fonksiyon Tanımı Karmaşıkveuzunprogramları,

Detaylı

Operatörlere İşlev Yükleme

Operatörlere İşlev Yükleme Binnur Kurt kurt@ce.itu.edu.tr Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi Operatörler C tip-duyarlı ve -odaklı bir dildir. Her operatör belirli tiplerde operand alır. C de temel tiplerden

Detaylı

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-1 Kapsama Kuralları & Rasgele Sayı Üretimi & Rekürsif (Özyinelemeli) Fonksiyonlar

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-1 Kapsama Kuralları & Rasgele Sayı Üretimi & Rekürsif (Özyinelemeli) Fonksiyonlar BLM-112 PROGRAMLAMA DİLLERİ II Ders-1 Kapsama Kuralları & Rasgele Sayı Üretimi & Rekürsif (Özyinelemeli) Fonksiyonlar Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/

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 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ı

Strings(Karakter Dizisi)

Strings(Karakter Dizisi) Strings(Karakter Dizisi) 0 {\ /\ Suhap SAHIN Onur GÖK 1 Tanımlama ve Kullanım char ad[20]; printf("adinizi girin: "); scanf("%s", ad); printf("\nmerhaba %s\n\n", ad); 2 Tanımlama ve Kullanım char ad[20];

Detaylı

MAK 1005 Bilgisayar Programlamaya Giriş. Fonksiyonlar. Prof. Dr. Necmettin Kaya

MAK 1005 Bilgisayar Programlamaya Giriş. Fonksiyonlar. Prof. Dr. Necmettin Kaya MAK 1005 Bilgisayar Programlamaya Giriş Fonksiyonlar Prof. Dr. Necmettin Kaya Gerçek hayattaki problemlerin çözümü için geliştirilen programlar çok büyük boyutlardadır. Daha büyük programlar yazmanın en

Detaylı

Klavyeden girilen metnin karakter uzunluğu bulan C programı. Klavyeden girilen metin içerisindeki küçük ve büyük harf sayısını bulan C programı

Klavyeden girilen metnin karakter uzunluğu bulan C programı. Klavyeden girilen metin içerisindeki küçük ve büyük harf sayısını bulan C programı girilen metnin karakter uzunluğu bulan C programı girilen metin içerisindeki küçük ve büyük harf sayısını bulan C programı void main() int sayac=0; printf("metin giriniz:"); while(metin[sayac]!= '\0')

Detaylı

Programlama Dilleri 1. Ders 5: Göstericiler

Programlama Dilleri 1. Ders 5: Göstericiler Programlama Dilleri 1 Ders 5: Göstericiler Değişkenlerin adresleri Bellekteki her değişkenin bir adresi ve bir de taşıdığı değeri vardır. int x=3; DEĞİŞKEN BELLEK ADRES 0 (0000) 1 2 3 4...... 65533 (FFFD)

Detaylı

Diziler. Yrd.Doç.Dr.Bülent ÇOBANOĞLU

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ı

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 7. Bölüm Metot Tanımlama ve Kullanma

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 7. Bölüm Metot Tanımlama ve Kullanma Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 7. Bölüm Metot Tanımlama ve Kullanma C Programlama Dr. Serkan DİŞLİTAŞ 7.1. Metot Kavramı Programlama dillerinde bütün kod satırlarının

Detaylı

Algoritma ve Programlama II Recursive Fonksiyonlar Dosyalama

Algoritma ve Programlama II Recursive Fonksiyonlar Dosyalama Algoritma ve Programlama II Recursive Fonksiyonlar Dosyalama Rekürsif Algoritmalar Bir problemin çözümü için döngü kurulması gerekiyorsa bu ihtiyacı karşılamak için birisi çevirimli diğeri rekürsif olarak

Detaylı

Algoritma Analizi Big O

Algoritma Analizi Big O Algoritma Analizi Big O 0 {\} /\ Suhap SAHIN Onur GÖK Giris Verimlilik Karsılastırma Giris Hangisi daha iyi? Hangi kritere göre? Giris Hangisi daha iyi? Hangi kritere göre? Giris Giris? Verimin ölçülmesi

Detaylı

İstanbul Teknik Üniversitesi IEEE Öğrenci Kolu DİZİLER

İ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ı

Arasınav Soruları Bahar 2018

Arası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 Arasınav Soruları Bahar 2018 Süre: 75 Dakika Adı ve Soyadı YANIT ANAHTARI Öğrenci Numarası Grubu İmza Tarih

Detaylı

Kocaeli Üniversitesi C Bilgisayar Programlama Ara Sınavı Test Soruları

Kocaeli Üniversitesi C Bilgisayar Programlama Ara Sınavı Test Soruları Kocaeli Ü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 : 11.04.2018, 50 dak. Dikkat!!! Soru kitapçığında ve cevap

Detaylı

Hafta 11 Çok Boyutlu Diziler

Hafta 11 Çok Boyutlu Diziler BLM111 Programlama Dilleri I Hafta 11 Çok Boyutlu Diziler Dr. Öğr. Üyesi Caner ÖZCAN Çok Boyutlu Diziler Bir dizi birden fazla boyutlu olabilir. Örneğin 3x4 bir matris için 2 boyutlu bir dizi kullanırız.

Detaylı

ÇOK BOYUTLU DİZİLER VE DİNAMİK BELLEK YÖNETİMİ İLE İLGİLİ ÖRNEKLER

ÇOK BOYUTLU DİZİLER VE DİNAMİK BELLEK YÖNETİMİ İLE İLGİLİ ÖRNEKLER ÇOK BOYUTLU DİZİLER VE DİNAMİK BELLEK YÖNETİMİ İLE İLGİLİ ÖRNEKLER // 5 adet ogrenci icin 8 adet sinavi // temsil etmesi icin bir ogrenci tablosu // olusturuyoruz. Bunun icin 5x8 bir matris // yaratilmasi

Detaylı

Yrd. Doç. Dr. Caner ÖZCAN

Yrd. Doç. Dr. Caner ÖZCAN Yrd. Doç. Dr. Caner ÖZCAN Derse Giriş Ders Web Sitesi: www.canerozcan.net Ofis Saatleri: Salı 11:00-13:00 Perşembe 15:30-17:30 ya da email ile randevu alınız: canerozcan@karabuk.edu.tr Kaynak Kitaplar:

Detaylı

Final Sınavı Soruları Güz, Süre: 90 Dakika

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ı

ÖZYİNELEME (RECURSION)

ÖZYİNELEME (RECURSION) ÖZYİNELEME (RECURSION) 1 2 ÖZYİNELEME(RECURSION) Kendi kendisini doğrudan veya dolaylı olarak çağıran fonksiyonlara özyineli (recursive) fonksiyonlar adı verilir. Özyineleme bir problemi benzer şekilde

Detaylı

4.Hafta BİL Soruların Çözümleri

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ı

KOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ. BİLGİSAYAR LABORATUVARI II FİNAL SINAVI SORU ve CEVAPLARI(I. ogr)

KOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ. BİLGİSAYAR LABORATUVARI II FİNAL SINAVI SORU ve CEVAPLARI(I. ogr) KOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BİLGİSAYAR LABORATUVARI II FİNAL SINAVI SORU ve CEVAPLARI(I. ogr) 1. Kendisine gönderilen iki karakter dizisini birleştirip geriye tek bir dizi döndüren ve

Detaylı

Nesne İşaretçileri. Binnur Kurt Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi. Sınıf Yapısı. Kalıtım Çok Şekillilik

Nesne İşaretçileri. Binnur Kurt Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi. Sınıf Yapısı. Kalıtım Çok Şekillilik Binnur Kurt kurt@ce.itu.edu.tr Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi Sınıf Yapısı Kalıtım Çok Şekillilik Nesneye Dayalı Programlama 2 1 İşaretçiler, veri değil, verinin yerleşik bulunduğu

Detaylı

ELN1001 BİLGİSAYAR PROGRAMLAMA I

ELN1001 BİLGİSAYAR PROGRAMLAMA I ELN1001 BİLGİSAYAR PROGRAMLAMA I DEPOLAMA SINIFLARI DEĞİŞKEN MENZİLLERİ YİNELEMELİ FONKSİYONLAR Depolama Sınıfları Tanıtıcılar için şu ana kadar görülmüş olan özellikler: Ad Tip Boyut Değer Bunlara ilave

Detaylı

ÖZYİNELEME (RECURSION)

ÖZYİNELEME (RECURSION) ÖZYİNELEME (RECURSION) 1 2 ÖZYİNELEME(RECURSION) Özyineleme, bir işlemin sonucu kendine önceki bir veya iki işlem sonucuna bağlı olarak bulunmasıdır. Kendi kendisini doğrudan veya dolaylı olarak çağıran

Detaylı

C PROGRAMLAMA D İ L İ

C PROGRAMLAMA D İ L İ C PROGRAMLAMA DİLİ Karşılaştırma Deyimleri if, if-else Yapısı switch -case Yapısı Program içerisinde bazen iki veya daha fazla değerin karşılaştırılması gerekebilir. Bunun için, bütün programlama dillerinde

Detaylı

Sınav Dağılım & IMKB Endeks

Sınav Dağılım & IMKB Endeks Sınav Dağılım & IMKB Endeks Ege Üniversitesi Bilgisayar Mühendisliği Veri Yapıları Proje-1 Hüseyin YAŞAR 05-06-7657 Didem KAYALI 05-06-7669 Umut BENZER 05-06-7670 Özlem GÜRSES 05-07-8496 Sürüm: 0.2 Bölüm

Detaylı

Bölüm 10. Altprogramların gerçeklenmesi ISBN 0-0-321-49362-1

Bölüm 10. Altprogramların gerçeklenmesi ISBN 0-0-321-49362-1 Bölüm 10 Altprogramların gerçeklenmesi ISBN 0-0-321-49362-1 10. Bölüm konuları Çağırma / geri dönme semantiği Yığıt-dinamik yerel değişkeni olan altprogramların gerçeklenmesi İçiçe altprogramlar Statik

Detaylı

YMT219 VERİ YAPILARI ÖDEV-1

YMT219 VERİ YAPILARI ÖDEV-1 YMT219 VERİ YAPILARI ÖDEV-1 1. İkiliBul yordamı aşağıda verilmiştir. İkiliBul yordamı A dizisi içerisinde 2 tane eşit sayı bulursa true bulamazsa false döndürmektedir. public boolean ikilibul(int[] A){

Detaylı

Bölüm 5. Ağaç. Olcay Taner Yıldız. O. T. Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi Yayınevi, / 73

Bölüm 5. Ağaç. Olcay Taner Yıldız. O. T. Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi Yayınevi, / 73 Bölüm 5. Ağaç Olcay Taner Yıldız 2014 O. T. Yıldız, C && Java ile Veri Yapılarına, Boğaziçi Üniversitesi Yayınevi, 2013 1 / 73 O. T. Yıldız, C && Java ile Veri Yapılarına, Boğaziçi Üniversitesi Yayınevi,

Detaylı

Bölüm 3 Yapısal Programlama

Bölüm 3 Yapısal Programlama 1 Bölüm 3 Yapısal Programlama Konular 3.1 Giriş 3.2 Algoritmalar 3.3 Pseudocode (Sahte kodlar) 3.4 Kontrol yapıları 3.5 If Seçim yapısı 3.6 If Else Seçim yapısı 3.7 While Döngü yapısı 3.8 Algoritmaları

Detaylı

Döngü komutları komutların bir çok kez yeniden yürülmesini. sağlayan, programlamada kullandığımız önemli yapılardan biridir.

Döngü komutları komutların bir çok kez yeniden yürülmesini. sağlayan, programlamada kullandığımız önemli yapılardan biridir. Bölüm 5 Döngü Komutları while Komutu Diğer Operatörler Bileşik Komut for Komutu do-while Komutu İçiçe Döngüler break ve continue Komutları while Komutu Döngü komutları komutların bir çok kez yeniden yürülmesini

Detaylı

Ağaçlar (Trees) Ağaçlar (Trees)

Ağaçlar (Trees) Ağaçlar (Trees) Giriş Binary Trees (İkilik Ağaçlar) Full Binary Trees Proper Binary Trees Complete Binary Trees Heap Binary Trees Balanced Binary Trees Binary Search Trees (İkilik Arama Ağaçları) Yrd.Doç.Dr. M. Ali Akcayol

Detaylı

mod ile açılacak olan dosyanın ne amaçla açılacağı belirlenir. Bunlar:

mod ile açılacak olan dosyanın ne amaçla açılacağı belirlenir. Bunlar: Dosyalama Çoğu programda, bazı verilerin disk üzerinde saklanmasına gerek duyulur. C programlama dilinde, disk dosyasına erişme (okuma ve yazma için) iki farklı yöntemle yapılır. Bunlar üst düzey ve alt

Detaylı

Programlama Dilleri Laboratuvarı

Programlama Dilleri Laboratuvarı 2014 2015 Programlama Dilleri Laboratuvarı Ders Sorumlusu: Yrd. Doç. Dr. İsmail KURNAZ Laboratuvar Sorumluları: İÇİNDEKİLER Deney 1: Bilgisayar Kavramları, Algoritma Geliştirme ve Çözümü, Programlamaya

Detaylı

YIĞINLAR YIĞINLAR. Yığın İşlemleri Postfix, Prefix, Infix. G. Ü. Bilgisayar Mühendisliği Bölümü

YIĞINLAR YIĞINLAR. Yığın İşlemleri Postfix, Prefix, Infix. G. Ü. Bilgisayar Mühendisliği Bölümü Yığın İşlemleri Postfix, Prefix, Infix Yrd.Doç.Dr. M. Ali Akcayol 1 Yığındaki elemanlardan sadece en son eklenene erişim yapılır. Yığına ilk eklenen eleman en son elde edilir. FILO (First-in-Last-out)

Detaylı

Eln 1001 Bilgisayar Programlama I

Eln 1001 Bilgisayar Programlama I Eln 1001 Bilgisayar Programlama I GiriŞ / ǹk¹Ş Fonksiyonlar¹ Ne ÖĆreneceĆiz? Temel Giriş/Çıkış Yapısı Giriş Fonksiyonları Karakterler için giriş fonksiyonları Scanf fonksiyonu Formatlı giriş Çıkış Fonksiyonları

Detaylı

Diziler (Arrays) Çok Boyutlu Diziler

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ı

Örneğin iki sayının toplamının hesaplayacak bir fonksiyon şöyle tanımlanabilir:

Örneğin iki sayının toplamının hesaplayacak bir fonksiyon şöyle tanımlanabilir: İçindekiler 1. Fonksiyonlar... 2 1.1. Parametreli Fonksiyonlar... 3 1.2. Parametresiz Fonksiyonlar... 4 1.3. Geri Dönüş Tipi Belirli Fonksiyonlar... 5 1.4. Geri Dönüş Tipi Belirsiz Fonksiyonlar (Void)...

Detaylı

/* Çember alanını hesaplar */

/* Çember alanını hesaplar */ ÖNİŞLEME KOMUTLARI /* Çember alanını hesaplar */ #include #define PI 3.14 int yaricap; float alan; printf( "Çemberin yarı çapını giriniz> " ); scanf( "%d", &yaricap ); alan = PI * yaricap * yaricap;

Detaylı

Bölüm 8. Ayrık Küme. Olcay Taner Yıldız. O. T. Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi Yayınevi, / 16

Bölüm 8. Ayrık Küme. Olcay Taner Yıldız. O. T. Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi Yayınevi, / 16 Bölüm 8. Ayrık Küme Olcay Taner Yıldız 2014 O. T. Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi Yayınevi, 2013 1 / 16 O. T. Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi

Detaylı

/ C Bilgisayar Programlama Final Sınavı Test Soruları. Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : , 60 dak.

/ 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ı

Arasınav Örnek Soruları Bahar 2018

Arasınav Örnek Soruları Bahar 2018 Sayfa#1 Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM 2116 Veri Yapıları Dersi Arasınav Örnek Soruları Bahar 2018 Süre: 75 Dakika Adı ve Soyadı YANIT ANAHTARI Öğrenci Numarası Grubu İmza

Detaylı

C ile Uygulamalar 3 - Cevaplar

C ile Uygulamalar 3 - Cevaplar C ile Uygulamalar 3 - Cevaplar Cevap-1: //Soru 1 int recursivefaktoriyel(int); //Fonksiyonun prototipi tanımlanmaktadır. int sayi; printf("faktoriyeli Hesaplanacak Sayiyi Giriniz:"); scanf("%d",&sayi);

Detaylı

Fonksiyonlar. C++ ve NESNEYE DAYALI PROGRAMLAMA 51. /* Fonksiyon: kup Bir tamsayının küpünü hesaplar */ long int kup(int x) {

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ı

BM102 BİLGİSAYAR PROGRAMLAMA II LABORATUVAR UYGULAMALARI. 3Hafta

BM102 BİLGİSAYAR PROGRAMLAMA II LABORATUVAR UYGULAMALARI. 3Hafta Ön bilgi: Özyineli fonksiyon tanımlanabilmeli. Dizilerin fonksiyon parametresi veya geri dönüş değeri olarak kullanımı bilinmeli. 1. Klavyeden girilen sayı n olmak üzere [1..n] aralığındaki sayıların toplamı

Detaylı

Alıştırma 1: Yineleme

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ı

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 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ı

BLM 111 ALGORİTMA VE PROGRAMLAMA I

BLM 111 ALGORİTMA VE PROGRAMLAMA I 1 BLM 111 ALGORİTMA VE PROGRAMLAMA I KONTROL YAPILARI TEKRARLAMA DEYİMLERİ = DÖNGÜLER (while, for, do-while) Şimdiye kadar, sıralı deyimleri ve seçim deyimlerini gördük. Ama, geldiğimiz aşamada, aşağıdaki

Detaylı

Sınav tarihi : Süre : 60 dak.

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ı

Sınav tarihi : Süre : 60 dak. c) En başta #include<stdio.h> yazılmamıştır. c) zt d) Pi e) X0

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ı

Yrd. Doç. Dr. Caner ÖZCAN

Yrd. Doç. Dr. Caner ÖZCAN Yrd. Doç. Dr. Caner ÖZCAN Derse Giriş Ders Web Sitesi: www.canerozcan.net Ofis Saatleri: Salı 11:00-13:00 Perşembe 15:30-17:30 ya da email ile randevu alınız: canerozcan@karabuk.edu.tr Kaynak Kitaplar:

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 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ı

while(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO

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ı

INTEGER OVERFLOW ***************************************************************/

INTEGER OVERFLOW ***************************************************************/ INTEGER OVERFLOW BELGE HAKKINDA Bu belge "GNU Free Documentation Licence" ile kaynak gösterilmek ve önceden yazarından izin alınmak kaydıyla yeniden yayınlanabilir. Bu belgedeki eksik, yanlış ya da geliştirilmesi

Detaylı

ESM-361 Mikroişlemciler. 3. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN

ESM-361 Mikroişlemciler. 3. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN ESM-361 Mikroişlemciler 3. Hafta Ders Öğretim Üyesi Dr.Öğr.Üyesi Ayşe DEMİRHAN Bit operatörleri Bit operatörleri bit düzeyinde işlem yapan operatörlerdir; yani sayıları bir bütün olarak değil, bit bit

Detaylı

Koşul doğru olduğu sürece istenilen işlem/işlemlerin tekrarlanmasını sağlayan yapıdır.

Koşul doğru olduğu sürece istenilen işlem/işlemlerin tekrarlanmasını sağlayan yapıdır. while Döngüsü: Koşul doğru olduğu sürece istenilen işlem/işlemlerin tekrarlanmasını sağlayan yapıdır. Örnek : 1..100 e kadar olan sayıları yanyana bir boşlukla ekrana yazdıran program. #include

Detaylı

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say İÇİNDEKİLER 1. Bilgisayarın Yapısı Ve Programlama Dilleri Giriş 1 Bilgisayar ve Programlamanın Kısa Bir Tarihçesi 2 Donanım ve Yazılım Kavramları 3 Bilgisayarın Donanımsal yapısı 4 Giriş Birimi (Input

Detaylı

SOMEBODY ELSE'S. ( DATA STRUCTURES and ALGORITHMS ) Veri Yapıları ve Algoritmaları

SOMEBODY ELSE'S. ( DATA STRUCTURES and ALGORITHMS ) Veri Yapıları ve Algoritmaları SOMEBODY ELSE'S ( DATA STRUCTURES and ALGORITHMS ) Veri Yapıları ve Algoritmaları Yazan: Burak Kıymaz Derleyen: Serhan Aksoy @2016 Burak Kıymaz 28.10.2015 Veri Yapıları Abstrak veri yapıları: (Abstract

Detaylı

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ AD SOYAD: TESLİM TARİHİ: OKUL NO: TESLİM SÜRESİ: 2 hafta ÖDEV NO: 5 1- BANKA

Detaylı

Ders 4: Temel Giriş/Çıkış Fonksiyonları

Ders 4: Temel Giriş/Çıkış Fonksiyonları Ders 4: Temel Giriş/Çıkış Fonksiyonları Giriş Temel giriş/çıkış fonksiyonları, bütün programla dillerinde mevcuttur. Bu tür fonksiyonlar, kullanıcıya ekrana veya yazıcıya bilgi yazdırmasına, ve bilgisayara

Detaylı

Algoritma ve Programlama: Karar Yapıları ve Döngüler

Algoritma ve Programlama: Karar Yapıları ve Döngüler Algoritma ve Programlama: Karar Yapıları ve Döngüler Bir algoritma, herhangi bir programlama dili (C, C++, Pascal, Visual Basic, Java gibi) ile kodlandığında program haline gelir. Algoritmada yer alan

Detaylı

Final Sınavı Örnek Soruları Bahar 2018

Final Sınavı Örnek 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ı Örnek Soruları Bahar 2018 Süre: 70 Dakika Adı ve Soyadı YANIT ANAHTARI Öğrenci Numarası Grubu

Detaylı

#include<stdio.h> #include<string.h> #include<stdlib.h> typedef struct { int ID; char isim[15]; char soyisim[15];

#include<stdio.h> #include<string.h> #include<stdlib.h> typedef struct { int ID; char isim[15]; char soyisim[15]; #include #include #include typedef struct int ID; char isim[15]; char soyisim[15]; Ad; typedef struct int ID; char teltip[3]; char tel[12]; Tel; typedef struct int ID; char

Detaylı

Bilgisayar programlama III Fonksiyonlar

Bilgisayar programlama III Fonksiyonlar Bilgisayar programlama III Fonksiyonlar Fonksiyon C deki program modülleridir Verilen girdilere göre bir çıktı üreten veya işlem gerçekleştiren manalı, isimlendirilmiş kod parçasıdır. Kullanıcı tanımlı

Detaylı

Hazır Fonksiyonlar {\} /\ Suhap SAHIN Onur GÖK 1

Hazır Fonksiyonlar {\} /\ Suhap SAHIN Onur GÖK 1 Hazır Fonksiyonlar 0 {\ /\ Suhap SAHIN Onur GÖK 1 string kutuphaneleri https://www.tutorialspoint.com/c_standard_library/ctype_h.htm 2 isdigit #include char c1; printf("karakter girin: "); scanf("

Detaylı

Temel Bilgisayar Bilimleri Ders Notu #4-1. kısım

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ı

Adı Soyadı : Öğrenci No :

Adı Soyadı : Öğrenci No : Adı Soyadı : Öğrenci No : Soru 1 2 3 Toplam Not F.Ü TEKNOLOJİ FAKÜLTESİ YAZILIM MÜHENDİSLİĞİ BÖL. YMT111 FİNAL SINAVI 2014 2015 Güz (12 OCAK 2015) SORULAR Toplam 3 soru 120 Puan, cevaplarınızı soru üzerinde

Detaylı

Stack Islemleri. Postfix ve Infix notasyonlari. Stack ozellikleri

Stack Islemleri. Postfix ve Infix notasyonlari. Stack ozellikleri Veri Yapilari Stacks Stacks Queues Lists Stack nedir Stack de tanimli islemler Push Pop Empty Full Inialization Stack in gerceklestirilmesi 10/7/2004 Veri yapilari 3.1 10/7/2004 Veri yapilari 3.2 Stack

Detaylı

Bölüm 6. Karma. Olcay Taner Yıldız. O. T. Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi Yayınevi, / 31

Bölüm 6. Karma. Olcay Taner Yıldız. O. T. Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi Yayınevi, / 31 Bölüm 6. Karma Olcay Taner Yıldız 2014 O. T. Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi Yayınevi, 2013 1 / 31 O. T. Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi

Detaylı

Binary Search. (Yarılama) Bölüm Dizide Bir Öğe Arama

Binary Search. (Yarılama) Bölüm Dizide Bir Öğe Arama Bölüm 39 Binary Search (Yarılama) 39.1 Dizide Bir Öğe Arama İkil aramayı (yarılama yöntemi) sıralı veri kümelerinde sık sık kullanırız. Örneğin, sözlükte bir sözcüğü ararken, sözlüğün bütün sayfalarını

Detaylı

Final Sınavı Örnek Soruları Güz 2018 Süre: 90 Dakika

Final Sınavı Örnek Soruları Güz 2018 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ı Örnek Soruları Güz 2018 Süre: 90 Dakika Adı YANIT ANAHTARI Öğrenci Numarası Soyadı İmza Sınav

Detaylı

Telefon Rehberi Uygulaması

Telefon Rehberi Uygulaması Sayfa1 Telefon Rehberi Uygulaması Uygulama, temel düzeyde, telefon rehberi üzerinedir. Kullanıcı, telefon rehberine eklediği her bir kayıt içi ad, soyad, ev telefonu ve üç adet cep telefonu bilgisi girebilmektedir.

Detaylı

Döngü ve Koşul Deyimleri

Döngü ve Koşul Deyimleri Döngü ve Koşul Deyimleri Programlar üç temel blok kullanılarak gerçekleştirilebilirler. art arda, bir koşula bağlı olarak ve sonlu sayıda yineleme (döngü) dir Koşul Deyimleri Birkaç seçenekten birini seçmek

Detaylı

Linux Assembly Programlamaya Giriş

Linux Assembly Programlamaya Giriş Linux Assembly Programlamaya Giriş Barış Metin Konular gcc / gas / ld Intel ve AT&T söz dizimleri gdb INT 80H C kütüphane fonksiyonları Stack Frame Örnek

Detaylı

Python ile Programlamaya Giriş DERS 9: FONKSİYONLAR DR. HÜSEYİN BAHTİYAR

Python ile Programlamaya Giriş DERS 9: FONKSİYONLAR DR. HÜSEYİN BAHTİYAR Python ile Programlamaya Giriş DERS 9: FONKSİYONLAR DR. HÜSEYİN BAHTİYAR 1 We call these reusable pieces of code functions Kaydedilen (ve tekrar kullanılan) adımlar def func(): print( selam ) print( nasilsin?

Detaylı

Adım Adım C-II. Eksik kalmış konular

Adım Adım C-II. Eksik kalmış konular Adım Adım C-II Eksik kalmış konular Bu dersin amacı Bu derste; değişkenler, sabitler ve operatörler ile fonksiyonlar konusunun detayları anlatılacaktır. Ders bitiminde; Daha etkin programlar yazma becerisinin

Detaylı