39
ALGORİTMA VE PROGRAMLAMA I Yrd. Doç. Dr. Deniz KILINÇ [email protected] Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi YZM 1101

ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

  • Upload
    others

  • View
    49

  • Download
    5

Embed Size (px)

Citation preview

Page 1: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

ALGORİTMA VE PROGRAMLAMA I

Yrd. Doç. Dr. Deniz KILINÇ

[email protected]

Celal Bayar Üniversitesi Hasan Ferdi Turgutlu

Teknoloji Fakültesi YZM 1101

Page 2: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

• Diziler

• Dizi Nedir?

• Dizilerin Bildirimi

• Dizilere Başlangıç Değeri Verme

• Dizilerde Arama ve Sıralama Algoritmaları

• Dizilerde Arama

• Doğrusal Arama (Linear Search)

• Karakter Dizileri

• Karakter Dizilerini Okumak ve Yazmak

• Karakter Dizilerinin Uzunluğunu Bulmak

• Karakter Dizilerini Birleştirmek

• Karakter Dizisi Kopyalamak

• Karakter Dizilerini Karşılaştırmak

Genel Bakış… 2

YZM 1101 – Algoritma ve Programlama I

Page 3: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

1. BÖLÜM

Diziler

3

YZM 1101 – Algoritma ve Programlama I

Page 4: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

4

YZM 1101 – Algoritma ve Programlama I

Dizi Nedir?

• Veri yapısı türlerinden bir tanesidir (Array, Struct, Pointer,

Class …).

• İçerisinde birden fazla,

• aynı tip ve

• aynı isimdeki

veriyi bellekte depolayabilen değişkenlere dizi denir.

• Örneğin: Bir sınıftaki öğrencilerin notlarını saklamak

için dizileri kullanmak mümkündür.

Page 5: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

5

YZM 1101 – Algoritma ve Programlama I

Dizilerin Bildirimi

• Bir dizi çok sayıda değişken barındırdığından, bunları

birbirinden ayırt etmek için indis adı verilen bilgiler

kullanılır.

• C Programlama Dili'nde, bir dizi hangi tipte tanımlanmış

olursa olsun başlangıç indisi her zaman 0'dır.

• Diziler tanımlanırken,

• dizinin adı,

• dizinin boyutu,

• dizi elemanların hangi tipte

olacağı belirtilmelidir.

Page 6: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

6

YZM 1101 – Algoritma ve Programlama I

Dizilerin Bildirimi (devam…)

• Bir dizinin bildirim işleminin genel biçimi aşağıdaki

gibidir:

veriTipi dizi_adı[eleman_sayısı];

• Örneğin double türündeki 8 adet öğrenci notunu bellekte

tutmak için aşağıdaki gibi bir dizi tanımlayabiliriz.

double ogrenci_notu[8];

Page 7: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

7

YZM 1101 – Algoritma ve Programlama I

Örnek: Dizilerin Bildirimi (devam…)

45

56

78

93

78

69

77

90

ogrenci_notu[0]

ogrenci_notu[1]

ogrenci_notu[2]

ogrenci_notu[3]

ogrenci_notu[4]

ogrenci_notu[5]

ogrenci_notu[6]

ogrenci_notu[7]

1. eleman

2. eleman

3. eleman

4. eleman

5. eleman

6. eleman

7. eleman

8. eleman

Page 8: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

8

YZM 1101 – Algoritma ve Programlama I

Örnek: Dizilerin Bildirimi (devam…)

• Dizinin ismi ogrenci_notu dur.

• Dizinin 8 elemanı

• ogrenci_notu[0], ogrenci_notu[1], ......, ogrenci_notu[7] şeklinde

gösterilmiştir.

• ogrenci_notu[0] içinde tutulan değer 45 , ogrenci_notu[1] içinde

tutulan değer 56 , ogrenci_notu[7] içinde tutulan değer 90 dır.

• Bu dizinin ilk iki elemanının içinde tutulan değerlerin toplamını

yazdırmak isteseydik;

• printf(“Sonuc: %f”, ogrenci_notu[0] + ogrenci_notu[1]);

• Sonuc: 101

Page 9: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

9

YZM 1101 – Algoritma ve Programlama I

Örnek: Dizilerin Bildirimi (devam…)

• Bu dizinin yedinci elemanının değerini ikiye bölüp,

oluşan sonucu x değişkenine atasaydık;

• x = ogrenci_notu[6] / 2;

Dizinin yedinci elemanı ile yedinci dizi

elemanı arasındaki farkı önemlidir. Dizi

indisleri 0’dan başladığı için “dizinin

yedinci elemanı” 6 indisine sahiptir.

”yedinci dizi elemanı” ise 7 indisine

sahiptir ve aslında dizinin sekizinci

elemanıdır.

Page 10: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

10

YZM 1101 – Algoritma ve Programlama I

Dizilere Başlangıç Değeri Verme

• Bir dizi, doğal olarak bazı veriler içerecektir.

• Diziye aynı anda birden fazla değer atanabilir. Bunun

için söz konusu değerler { } işaretleri arasında virgül

ile ayrılarak yazılırlar.

• Örnek:

float kutle[5] = { 8.471, 3.683, 9.107, 4.739, 3.918 };

int maliyet[3] = { 25, 72, 94 };

double a[4] = { 10.0, 5.2, 7.5, 0.0};

• Küme parantezleri sonlandırıcı ; karakteri ile

bitmektedir.

Page 11: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

11

YZM 1101 – Algoritma ve Programlama I

Dizilere Başlangıç Değeri Verme (devam…)

• Bir dizinin uzunluğu belirtilmeden de başlangıç değeri

atamak mümkündür.

• Örnek:

• int a[] = { 100, 200, 300, 400 };

• float v[] = { 9.8, 11.0, 7.5, 0.0, 12.5};

• Derleyici bu şekilde bir atama ile karşılaştığında, küme

parantezi içindeki eleman sayısını hesaplar ve dizinin o

uzunlukta açıldığını varsayar.

• Yukarıdaki örnekte, a dizisinin 4, v dizisinin 5 elemanlı

olduğu varsayılır.

Page 12: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

12

YZM 1101 – Algoritma ve Programlama I

Dizilere Başlangıç Değeri Verme (devam…)

• Dizilere başlangıç değeri atarken, tüm elemanlara

değer vermeden de atama yapmak mümkündür.

• Örnek:

• int sayilar[20] = {0};

Tüm dizi elemanlarına 0 değeri atanır…

• int sayilar[20] = {1, 2, 3};

Dizinin ilk 3 elemanına 1,2 ve 3 değerleri atanır. 4’ten itibaren olan dizi

elemanlarına 0 değeri atanır…

• Sayısal tipindeki dizi elemanlarına 0 değeri, metin

tipindeki dizi elemanlarına NULL değeri atanır.

Page 13: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

13

YZM 1101 – Algoritma ve Programlama I

Örnek1: Dizi elemanlarına değer atama ve

okuma

• Tek boyutlu, 5 elemanlı, sayısal (int) bir dizi

tanımlanarak:

• Dizi elemanlarına dizi indislerinin 3 katı for döngüsü

içerisinde değer olarak atanacaktır.

• Yine başka bir for döngüsü içerisinde bu değerler

ekrana yazdırılacaktır.

Page 14: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

14

YZM 1101 – Algoritma ve Programlama I

Örnek1: Dizi elemanlarına değer atama ve

okuma (devam…)

Page 15: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

15

YZM 1101 – Algoritma ve Programlama I

int x[5]; // 5 elemanlı sayısal x dizisi

int i = 2;

• x[0] = 20; // Geçerli atama

• x[2.3] = 5; // Geçersiz atama

• x[2*i – 3] = 3; // Geçerli atama, x[1] dizi elemanına 3

değerini atar

• x[i++]; // Önce x[2] dizi elemanına erişilir daha sonra

i değişkenine 3 değeri atanır

• x[(int) x[1]]; // x[3] dizi elemanına erişilir

Örnek2: Dizi atamaları

Page 16: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

16

YZM 1101 – Algoritma ve Programlama I

Örnek3: Klavyeden sayısal değer girme

• Klavyeden maksimum 10 tane sayısal değer

girilecektir.

• Girilen sayılar bir dizide saklanacaktır.

• Sayı girme işlemi 0 girilene kadar devam edecektir.

• 0 değeri girildiği anda 0 sayısı hariç girilen diğer tüm

değerler diziden okunarak ekrana yazdırılacaktır.

Page 17: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

17

YZM 1101 – Algoritma ve Programlama I

Örnek3: Klavyeden sayısal değer girme (devam..)

Page 18: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

18

YZM 1101 – Algoritma ve Programlama I

Dizi Kullanımlarında Dikkat Edilmesi Gereken

En Önemli Nokta

• Dizi boyunca döngü kullanırken dizi

indisi asla 0’ın altına inmemeli ve

her zaman dizideki toplam eleman

sayısından az olmalıdır (büyüklük-

1).

• Döngü devam şartının bu aralığın

dışındaki elemanlara ulaşılmasını

engellediğinden emin olmamız

gereklidir.

• Dizi sınırlarının dışındaki

elemanları kullanmanın yaratacağı

hatalar (genelde ciddi hatalardır)

sistemden sisteme farklılık

gösterir.

Page 19: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

19

YZM 1101 – Algoritma ve Programlama I

Örnek4: Dizi elemanı değeri kadar ekrana *

karakteri yazdırma (Uygulama Dersi)

• 10 elemanlı { 19, 3, 15, 7, 11, 9, 13, 5, 17, 1 } grafik isimli bir

dizi oluşturulacaktır.

• Dizideki elemanlar tek tek okunarak her dizi elemanının sayısı

kadar ekrana * karakteri yazdırılacaktır.

• Ekran çıktısı aşağıdaki gibi olacaktır.

Page 20: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

20

YZM 1101 – Algoritma ve Programlama I

Dizilerde Arama ve Sıralama Algoritmaları

• Arama ve sıralama algoritmaları

(Search and sort algorithms)

programlama ve yazılım geliştirme

dünyasında hem akademik hem de

endüstri açısından önemli bir yere

sahiptirler.

• Özellikle büyük veri kaynakları ile

çalışırken, aradığınız veriye en hızlı

şekilde ulaşmanız doğru algoritmayı

kullanmanıza bağlıdır.

Page 21: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

21

YZM 1101 – Algoritma ve Programlama I

Dizilerde Arama

• Bir dizinin, belli bir arama değerine eşit olan bir

değer içerip içermediğine karar vermek gerekebilir.

• Dizinin belirli bir elemanını bulma sürecine arama

denir.

• Ders kapsamında 2 tane arama tekniği üzerinde

durulacaktır:

• Doğrusal Arama (Linear / Sequential Search)

• İkili Arama (Binary Search)

Page 22: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

22

YZM 1101 – Algoritma ve Programlama I

Doğrusal Arama

• Dizinin ilk elemanından başlanarak dizinin her

elemanı, arama değeriyle karşılaştırılır.

• Aranan değer bulunduğunda ilgili dizi elemanının

indisi değer olarak döndürülür.

• Aranan değer bulunamazsa -1 değeri döndürülür,

• Dizi herhangi bir şekilde sıralanmadığından değer ilk

ya da son elemanda bulunabilir.

• Dolayısıyla, program ortalama olarak, arama

değeriyle dizinin elemanlarının yarısını

karşılaştırmalıdır.

Page 23: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

23

YZM 1101 – Algoritma ve Programlama I

Doğrusal Arama (devam…)

Page 24: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

24

YZM 1101 – Algoritma ve Programlama I

Karakter Dizileri (Strings)

• Bazı programlama dillerinde karakter dizilerini tutmak için

özel veri türleri (String, string vb.) bulunmaktadır.

• Ancak C programlama dilinde böyle bir veri türü olmadığı

için yerine karakterlerden oluşan bir boyutlu diziler

kullanılır.

• Karakter dizilerine özel olarak, karakter dizilerinin sonuna

sonlandırıcı karakter olarak adlandırılan bir simge eklenir.

• Sonlandırıcı karakter:

• Dizinin bittiği yeri gösterir,

• ASCII tablosunun sıfır numaralı ('\0') karakteridir.

Page 25: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

25

YZM 1101 – Algoritma ve Programlama I

Karakter Dizileri (Strings) devam…

• Karakter dizilerine 2 şekilde başlangıç değeri verilebilir:

(1) char s[7] = {'d','e','n','e','m','e','\0'};

(2) char s[7] = "deneme";

• Birinci tanımlamada sonlandırıcı karakter programcı

tarafından konmalıdır.

• İkinci tanımlamada ise buna gerek yoktur. Çünkü,

sonlandırıcı karakter bu atamayla, derleyici tarafından

eklenir.

Page 26: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

26

YZM 1101 – Algoritma ve Programlama I

Karakter Dizilerini Okumak

• Bir karakter dizisini klavyeden okumak için C'nin standart gets() fonksiyonu kullanılır.

• stdio.h dışında yeni bir kitaplığı C programına dahil

etmeye gerek yoktur.

• Bu fonksiyon herhangi bir indeks tanımlamadan

karakter dizilerinin okunmasını sağlar.

• Okuduğu karakter dizisinin sonuna satır sonu işaretini

değil, NULL değerini yerleştirir.

Page 27: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

27

YZM 1101 – Algoritma ve Programlama I

Karakter Dizilerini Okumak (devam…)

• gets() fonksiyonu, klavyeden girilen karakter dizilerini,

herhangi bir ek tanımlamaya gerek duymadan bir dizi içine

yerleştirir.

• Dizinin her bir karakteri dizinin farklı bir hücresi içine

yerleşir.

• Örnek:

char ad[20];

...

gets(ad);

Page 28: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

28

YZM 1101 – Algoritma ve Programlama I

Örnek5: Karakter Dizisi Okuma ve Yazma

• Maksimum 50 karakter okuyabilecek bir karakter dizisi

tanımlayın.

• Klavyeden karakter dizisini okuyun ve ekrana karakterleri

yazdırın.

• Tek tek karakterleri yazdırın

• Tüm metni tek seferde yazdırın

Page 29: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

29

YZM 1101 – Algoritma ve Programlama I

Örnek5: Karakter Dizisi Okuma ve Yazma (devam…)

Page 30: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

30

YZM 1101 – Algoritma ve Programlama I

Karakter Dizilerinin Uzunluğu Bulmak

• Bazı uygulamalarda bir karakter dizisinin uzunluğunu

bulmak gerekebilir.

• Bir karakter dizisinin uzunluğunu, yani kaç karakter içerdiğini bulmak için C'nin standart strlen()

fonksiyonu kullanılır.

• Uzunluk bulunurken, içerdiği en son karakter olan NULL

karakteri göz özüne alınmaz.

• Örneğin, karakter dizisi "abc" değerlerini içeriyorsa,

strlen() fonksiyonu bu uzunluk olarak "3" değerini

döndürür.

Page 31: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

31

YZM 1101 – Algoritma ve Programlama I

Örnek6: Girilen Karakter Dizisinin

Uzunluğunu Bulmak

Page 32: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

32

YZM 1101 – Algoritma ve Programlama I

Karakter Dizilerini Birleştirmek

• İki karakter dizisini birleştirilerek tek bir karakter dizisi haline dönüştürmek için C'nin strcat() fonksiyonu kullanılır.

• Bu fonksiyon, var olan bir karakter dizisinin sonuna bir başka

karakter dizisini ekleyecektir.

• Örneğin "abc" karakter dizisinin sonuna "def" karakter dizisi

strcat() fonksiyonu kullanılarak eklenebilir.

Page 33: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

33

YZM 1101 – Algoritma ve Programlama I

Örnek7: Girilen Karakter Dizilerini

Birleştirmek

Page 34: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

34

YZM 1101 – Algoritma ve Programlama I

Karakter Dizisi Kopyalama

• Karakter dizilerine direk atama yapılamamaktadır.

• Örneğin aşağıdaki atama ifadesi yanlıştır:

char dizi[50];

katar = "abcde";

• Çünkü bu atama göstergeye yapılan atamadır.

• Göstergelerin ne olduğunu daha sonra detaylı olarak ele

alınacaktır.

• Atamanın bir karakter dizisine yapılabilmesi için, C'nin

standart strcpy() fonksiyonu kullanılır.

Page 35: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

35

YZM 1101 – Algoritma ve Programlama I

Örnek8: Karakter Dizilerini Kopyalamak

Page 36: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

36

YZM 1101 – Algoritma ve Programlama I

Karakter Dizilerini Karşılaştırmak

• İki karakter dizisinin birbirleriyle karşılaştırılarak, içerdiği

karakterlerin aynı olup olmadıkları test edilebilir.

• Bu amaçla strcmp() fonksiyonu kullanılır.

• Karşılaştırma sonucunda, her iki karakter dizisi birbirinin

aynı ise "0"; birbirinden farklı ise "1" değeri üretilir. Elde

edilen bu değer kullanılarak programın akışı yönlendirilebilir.

Page 37: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

37

YZM 1101 – Algoritma ve Programlama I

Örnek9: Karakter Dizilerini Karşılaştırmak

Page 38: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

38

YZM 1101 – Algoritma ve Programlama I

KAYNAKLAR

• N. Ercil Çağıltay ve ark., C DERSİ PROGRAMLAMAYA

GİRİŞ, Ada Matbaacılık, ANKARA; 2009.

• Milli Eğitim Bakanlığı "Programlamaya Giriş ve

Algoritmalar Ders Notları", 2007

• http://tr.wikipedia.org/wiki/Code::Blocks

• http://www.codeblocks.org

• http://www.AlgoritmaveProgramlama.com

• http://www1.gantep.edu.tr/~bingul/c

Page 39: ALGORİTMA VE PROGRAMLAMA I...YZM 1101 – Algoritma ve Programlama I Dizilerin Bildirimi •Bir dizi çok sayıda değiken barındırdığından, bunları birbirinden ayırt etmek

39

İYİ ÇALIŞMALAR…

Yrd. Doç. Dr. Deniz KILINÇ

[email protected]

YZM 1101 – Algoritma ve Programlama I