1 Aralık 1987 Tarihli Commodore Gazetesi Sayfa 63

1 Aralık 1987 tarihli Commodore Gazetesi Sayfa 63
Metin içeriği (otomatik olarak oluşturulmuştur)

SEHIR: CKED ARRAY[I 12) OF CHAR; END; END; Bu tanımlamadan sonra kullanabi- leceğimiz değişkenleri görelim: KISI.ISIM KISI.ADRES KISI.ISIM.ILK KISI.ISIM.ORTA KISI.ISIM.SON KISI.ADRES.SOKAK KISI.ADRES.SEHIR WITH KOMUTU Özellikle alanların kendileri de ka- yıt olduklarında kayıt değişkenlerinin isimleri aşırı derecede uzar. Bu değiş- kenleri sık kullandığınız yerlerde uzun uzun yazmak hem yorucu olur, hem de hata oranı yüksek olur. Bu- nu önlemek için PASCAL'da WITH komutu bulunuyor. WITH komutu sayesinde kayıt de- gişkeninin ismini kullanmadan sadece alan isimlerini kullanarak işimizi hal- ledebiliriz. Mesela TARIH kaydını bu şekilde kullanalım: AY 1 — kas; N —) AYINGUNU:-—4; YIL "—65; END; END. WITH komutu ile aynı anda bir- den fazla kaydı kontrol edebiliriz. Buna bir örnek verelim: WITH KISI, ISIM, ADRES DÖ BEĞIN ILK: - ORTA; SON: - ILK; SOKAK:-' SEHIR: - 'Istanbul END; KAYIT DİZİLERİ Tanımlamış olduğumuz kayıtlara sadece tek bir veri girebiliriz. Ancak kayıtları dizilerle birlikte tanımlar- sak, birçok kayıt girme şansına sahip AA A g İ 64 oluruz: Mesela; VAR KİTAPLIK:ARRAYÇ(I..100) OF KITAP; Bu tanımlamadan sonra kitaplığı- mızdaki 100 kitap için bilgi girebili- riz. Mesela 5 numaralı kitabın ismi- ni öğrenmek için; WRITELNİKITAPLIK|51.BASLIK); Komutunu vermemiz gerekir. DEĞİŞKEN KAYITLAR Bazen programın akışına göre de- ğişebilen kayıtlar kullanmamız gere- kir. Mesela bir kitaplıkta çeşitli ya- yınların kaydını tutuyoruz diyelim. Kitapların kayıtları ile magazinlerin kayıtları tam olarak aynı değildir. Bir kitap için yazar ismi, başlık, basım yeri, yayıncı ve basım yılı bilgilerini tutmamız gerekir. Magazin için yazar ismi, başlık, magazinin ismi, basıldığı ay ve yıl, magazinin başlama ve bitiş sayfa numaralarını tutmamız gerekir. Yazar, başlık ve basım yılı veri alanları hem kitap hem .magazinler için aynı olduğundan bu alanlar ka- yitta daima bulunacaklar. Fakat di- ğer alanlar sadece magazin veya ki- tap için geçerli olurlar. Programın gerekli yapıyı seçmesi için bir referans kullanmamız gerekir, bu nedenle bir veri tipi tanımlayalım ve bunu kullanarak örneğimizi kayıt şekline dönüştürelim: VAPE REFTIPI - (KITAP,MAGAZIN); REFERANS- RECORD YAZAR: PACKED ARRAYII..40) OF CHAR; BASLIK: PACKED ARRAY:1..80) OF CHAR; YIL:INTEGER; CASE TIP: REFTIPI OF KITAP:(SEHIR: PACKED ARRAY H..20) OF CHAR; YAYINCI: Commodore PACKED ARRAY U..10) OF CHAR); MAGAZIN: ARRAYII..7) OF CHAR;) END; VAR K:REFERANS TIP değişkeninin alacağı değere göre değişken isimlerine örnek vere- lim: Eğer TIP: — kitap; ise: K.TIP.SEHIR K.TIP.YAYINCI Eger TIP: — magazın;ise: K.TIP.ISIM K.TIP.AY K.TIP.SAYFA değişkenlerini kullanabiliriz. FERANS olarak tanımladığı- mız kaydımızın bir sabit, bir de de- ğişken kısmı bulunuyor. Bir kayıtta ilk önce sabit kısım tanımlanır. Eğer varsa arkadan değişken kısım tanım- lanır. Örneğimizde TIP değişkeninin değerine göre kaydımızın değişken kısmı belirleniyor. Program Döküm Eki'nde RE- CORD ve ARRAY yapısını kullanan programlar yer alıyor. Böylece PASCAL dilini anlatma- ya çalıştığımız yazı dizisinin sonuna geldik. PROGRAM VEDA; BEGĞIN WRITELN('Baska bir yazıda buluşmak'); WRITELNÇ'uzere hoscakalın.'); END.

Bu sayıdan diğer sayfalar: