Pascal programla dili yazı dizisi bolum 1. Pascalda program yapısı, kullanılan bazı komutlar ve bir kac ornek program... Bu yazımızda Pascal programlama dili hakkında yeni oğrenmeye başlayanlar icin kendi bildiklerimi paylaşmak istedim. Oncelikle pascalın tarihini şu şekilde ozetleyebiliriz:Pascal 1968 yılında Niklaus Wirth tarafından geliştirilmiş,yuksek seviyeli bir programlama dilidir.


Pascal program yazmadaki sağladığı kolaylıklardan dolayı yaygın olarak kullanılmaktadır. Programcının kendisine gerekli bir program parcasını bir defa hazırladıktan sonra bu unitleri başka programlar icinde kolayca kullanması ve istediği şekilde veri tipleri tanımlayabilmesi pascalı onemli kılan ozelliklerdendir. Artık program nasıl yapılır onu acıklamaya calışacağım.

Pascal programını yapısı uc ana kısımdan oluşur.

1. Program İsmi

2. Tanımlama Bloğu

3. Ana Program Bloğu

**1. Program İsmi: Program ProgramIsmi; biciminde yazılır.Program ismini yazarken turkce karakter

kullanılmaz. (C,c,U,u,Ğ,ğ,İ,ı,Ş,ş,O,o).Program ismi iki veya daha fazla sozcukten oluşuyorsa araya

boşluk konulmaz. Kelimeler arasına_(alt cizgi) yazılır.Program ismi 30 karakterden fazla olmamalıdır.

Pascal tarafından ayrılmış sozcukler(reserved words) kullanılmaz.Ozel işaretler kullanılmaz ( ) , . ' ; : [ ] v.b. gibi

Ornek:

Program program_adı;

**2.Tanımlama Bloğu

Unit (Kutuphane): Pascal derleyicisinin hazır kutuphaneleri ile programcı tarafından tanımlanmış

kutuphanelerin belirtildiği bloktur.

Const : Sabit sayıların tanımlandığı bloktur.

Ornekler

Pi = 3.14;

Maksimum = 15;

Sifre = 'YAKAMOZ'

Type : Ozel tanımlı tiplerin belirtildiği bloktur.

Label : Program akışının değiştirileceği atlama adımlarının tanımlandığı bloktur.

Var (variable): Programda kullanılacak değişkenlerin tanımlandığı bloktur.

Değişken Tipleri

Tam Sayılar

Tip Alt Sınır Ust Sınır Bellekte Kapladığı Alan

ShortInt -128 127 1 Byte

Integer -32768 32767 2 Byte

Byte 0 255 1 Byte

Word 0 65535 2 Byte

LongInt -2.147.483.648 2.147.483.647 4 Byte

Real 2.9 * 10^-39 1.7 * 10^38 6 Byte

Single 1.5 * 10^45 3.4 * 10^38 4 Byte

Double 5.0 * 10^-324 1.7 * 10^308 8 Byte

Extended 3.4 * 10^-4932 1.1 * 10^4932 10 Byte

Comp -2^63+1 2^63-1 8 Byte

string 1 ....255 karakter

char 1 byte

boolean 1 byte

Procedure, Function : Altprogramların tanımlandığı bloktur.Tanımlamada oncelik sırası

yukarıdan aşağıya doğrudur.

**3. Ana Program Bloğu

Begin ile başlayıp End ile biter.

Ornek Program:

Program Ilk; Program Başlığı sonuna ; konulmaldır.

Const Sabit sayı tanımlama

b:=10 b sabitinin değeri 10 dur.

Var Değişken tanımlama

a : integer; a sayısı tam sayıdır.

b : real; b sayısı ondalıklı sayıdır.

Begin ana program başladı.

Write ('a sayısını giriniz : '); Ekrana ' ... ' arasındakileri yaz.

Readln(a); a değişkenini (klavyeden) gir. Alt satıra gec. (ln)

c := a + b; a değişkeni ile b sabitini topla, c'ye ata.

Writeln('a + b = ', c) '...' icindekileri yaz, sonucunu yaz (c'yi), alt satıra gec.

Readln Klavyeden herhangi bir karakter oku (Program calıştırıldığında

sonucu (c) ekranda bekletmek icindir. (yazılmasa da olur). Son satırdan bir onceki satıra ; yazılmasa da olur.

End. Program sonu (Her Begin'in bir End'i vardır.

Programın sonundaki End'in sonuna nokta isareti konulur.

Sabit ve değişkenleri tanımlarken sayı ile başlamazlar ( 2a: integer; tanımlaması yanlıştır).

İki sozcuk arasında boşluk bırakılmaz. Turkce karakter kullanılmaz (C c O o U u Ğ ğ İ ı Ş ş C c).

Ozel işaretler kullanılmaz ( ; : , . ' " + - * / - ? = .........) Turbo Pascal'ın ayrılmış sozcuklerinden

herhangi birisi değişken ya da değişken ismi olmaz. Alt cizgi ( _ ) ile başlayabilir.

Ornekler:

Const

Pi_Sayisi = 3.1415;

Bulundugum_yil = 2000;

Tarih = '11/11/2000';

isim = 'ahmet';

soyad = 'boyraz';

YAS =19;

Ornekler:

Var

Yas : shortint;

SAYI : integer;

secmen_sayısı : integer;

Buyuksayi : longint;

ucret : real;

Pi : real;

Sayac : word;

Nufus : single;

sayi2 : double;

aralik : extended;

SaYI3 : comp;

Yeni : byte;

harf : char;

Atama İşlemlerinde eşitliğin sol tarafına -, + veya sayı yazılmaz.Birden fazla değişken yazılmaz.

(a+b:=c)

PASCAL'DA KULLANILAN BAZI KOMUTLAR

Write-writeln:Sabit,değişken,yazdığımız mesajlar veya işlem sonuclarının bir dosyaya veya ekrana yazılmasını sağlar.Writeln(writeline)komutu write'dan farklı olarak yazılar yazıldıktan sonra imlec bir sonraki satıra gecer.

Read-readln:Klavyeden bilgi gondermek icin kullanılır.Girilen bilgiler değişkenlerde tutulur.

Case-of:Verilen ifadenin aldığı değere gore program akışını değiştirmek veya istenen işlemleri yapmak icin kullanılır.

For-do:İstenen işlemleri istediğimiz sayıda tekrarlatmak icin veya istenen iki aralıkta değerler elde etmek icin kullanılır.

Repeat-until:İstenen şartlar oluşuncaya kadar işlemleri tekrarlatmak icin kullanılır.

While-do:Belirtilen şart doğru olduğu surece istenen işlemleri tekrarlamak icin kullanılır.

Clrscr:Ekranı temizlemek icin kullanılır.

gotoxy:İmleci ekranda herhangi bir satır veya sutuna taşımak icin kullanılır.(goto(sutun,satır),goto(5,5))

Readkey:Klavyeden bir tuşa basılmasını sağlar.Bu komut program icinde basılan veya basılacak olan tuşları kontrol etmek icin kullanılır.(programı bitirmek icin * tuşuna basınız gibi)

Keypressed:klavyeden bir tuşa basılıncaya kadar işlemleri devam ettirmak veya bir tuşa basılıp basılmadığını kontrol etmek icin kullanılır.

Window:Ekranda bir pencere oluşturmak icin kullanılır.

Textcolor:yazının rengini belirlemek icin kullanılır.

textbackground:Ekrana yazılacak olan yazının zemin rengini belirlemek icin kullanılır.

Delayrogramın belirtilen sure kadar bekletilmesini sağlar.

Delline:imlecin uzerinde bulunduğu satırı silmek icin kullanılır

insline:imlecin uzerinde bulunduğu satırdan itibaren ekranı bir satır aşağı kaydırarak

boş bir satır acılmasını sağlar

Sound:verilen frekansta ses elde etmek icin kullanılır.

nosound:uretilen sesin kesilmesini sağlar.

textmode:ekranın satır ve sutun sayılarını ayarlamak icin kullanılır.

Şimdi oğrendiğimiz bilgilerle basit bir program yazalım.

Ornek Program:

program pisagor;

var

a, b: integer;

c: real;

begin

writeln ('a ve b sayılarını giriniz : ');

readln (a, b);

c := sqrt(sqr(a]sqr(b));

writeln('c = ', c:6:2);

readln

end.

*************

İşlemler ve Oncelikler

1. Not

2.*, /, Div, Mod, And

3.+, -, Or

4., In

Eğer aynı işlemciden birden fazla varsa işlem soldan sağa doğru yapılır.Eğer işlemlerde parantez kullandıysak yukarıdaki oncelik sırasına gore daha once yapılır.

Mantıksal İşlemler ve Sonucları

(1=Doğru=True) (0=Yanlış=False)

Ve (And) Operatoru

p q p ve q

1 1 1

1 0 0

0 1 0

0 0 0

Veya (Or) Operatoru

p q p veya q

1 1 1

1 0 1

0 1 1

0 0 0

Devamı ikinci yazıda...

__________________