28 Ocak 2010 Perşembe

Diziler

Evet tiplerden bahsettiğimize göre çok önemli olan dizilere geçebiliriz.

Diyelimki bir sınıf var ve siz bu sınıfın yaşlarını tutmak ve ortalama, toplama gibi işlemler yapmak istiyorsunuz. Öğrenci sayısıda 30 olsun. Her bir öğrenci için ayrı ayrı INT tipinde değişken mi tanımlamamız gerekecek? İşte bu sorunu çözmek için "dizi" kullanabiliriz. Dizimizin boyutunu 30 olarak ayarlarsak 30 tane değişken tanımlamış gibi oluruz. Bunlara ulaşmak içinde "indis" dediğimiz bir değişken kullanırız.

Şimdi bunu gerçekleyelim;
C için;
int Ogrenciler[30];

dediğimiz zaman Ogrenciler değişkeni içiin 30 blok ayırdı. Eğer kod içinde 1. öğrenciye ulaşmak için Ogrenciler[0], 3. öğrenciye ulaşmak için ise Ogrenciler[2] dememiz yeterli olacak.

Peki neden 3. öğrenci için indisimiz 2 oldu. Dizilerde mantık her zaman indis 0 dan başlar. O yüzden ulaşmak istediğimiz yerin indisi (eksi)-1 olacak.

Char değişkeninde sadece bir harf tutabiliyorduk. Peki kelime tutmak istesek ne olacak?

İşte bunuda dizi ile çözebiliriz. Nasıl mı?

Char Soyadlar[20];

dersek; Soyadlar için 20 tane char girebilir demek olmuyor mu?

Soyadlar[0]='S';
Soyadlar[1]='e';
Soyadlar[2]='l';
Soyadlar[3]='a';
Soyadlar[4]='m';
Soyadlar[5]='t';
Soyadlar[6]='o';
Soyadlar[7]='ğ';
Soyadlar[8]='l';
Soyadlar[9]='u';

görüldüğü gibi soyadımı bir dizi içinde tutabildim.

Umarım anlaşılmıştır. Gelecek yazımda bununla ilgili bir örnek yapmayı düşünüyorum.

Bol algoritmalı günler...

Hiç yorum yok:

Yorum Gönder