PASCAL nedir? Nasıl kullanılır?
Giriş
Pascal programlama dili 1968 yılında Niklaus Wirth tarafından geliştirilmiş
üst düzey programlama dilidir. Pascal programlama dilinin günümüzdeki
sürümleri Turbo/Borland ve Windows Pascal adları ile bilinmektedir. Turbo
Pascal programlama dili mühendislik problemlerinin çözümlerinde, bilimsel
projelerde, sağladığı grafik desteği ve program yazmadaki kolaylıklarıyla
aranılan bir dil olma özelliğini sürdürmektedir.
Pascal programlama dilinin önemli özelliklerinden biri, program yazmadaki
kolaylıkların yanısıra, yazılan bir metinin kolaylıkla değiştirilebilmesi,
program içindeki bir metinin istenilen yere taşınabilmesi, kopyalanabilmesi,
yazılan programdaki yazım kurallarının kolaylıkla kontrol edilebilmesi,
hataların kolaylıkla tespiti ve bu hataların düzeltilmesi için yaptığı
öneriler vb. gibi işlemlerin çabuk ve güvenilir bir şekilde yapılabilmesine
olanak sağlamasıdır.
Pascal'ın programcıya sunduğu önemli özelliklerden biri de; bazı
programlarda ortak olarak kullanılan program parçalarının ayrı bir Pascal
dosyası olarak saklanması suretiyle farklı programlarda bu program
parçalarının kullanılabilmelerine olanak tanımasıdır.
Pascal Menüleri
Pascal editöründe kullanımı kolaylaştıran bir çok menü vardır. Bu menülere
ulaşmak için "Alt " tuşu ile birlikte menü isimlerinin ilk harflerine basmak
yeterlidir. Menüye ulaştıktan sonra menü komutlarına erişim için üç yol
vardır. 1)Mouse ile, 2)Ok tuşlarıyla 3) menü komutu üzerindeki işaretli
harfe basılır.
Burada Pascal menülerinin tamamını tanıtmayıp sıklıkla kullanılan menü ve
menü komutlarının kullanımı anlatılacaktır. Burada tanımı yapılan menüler,
Windows Pascal için ifade edilmekle olup, aralarındaki küçük farklarla Turbo
ve Borland Pascal 7.0 için de geçerlidir.
PASCAL
PROGRAMLAMA DİLİ YAPISI
Bir Pascal programı en genel anlamda üç ayrı kısımdan oluşmuştur. Bu
kısımlar bulunmaları gereken sıraya göre aşağıda verilmiştir.
Program Başlığı;
Tanımlama Bloğu;
BEGIN
İcra Bloğu;
END.
Programların asıl icra bölümü son bölümüdür. Yukarıda icra bloğu olarak
gösterilen bu bölüm, Pascal komut cümlelerinden oluşur. ICRA bloğu, "BEGIN"
ile başlar "END." ile sona erer. Her program bloğu birden fazla "END"
içerebilir. Ancak bu end deyimleri program içinde bulunan değişik blokların
sonunu göstermek için kullanılır ve hiç birinin sonunda "." işareti
bulunmaz. "." işareti sadece ana programın sonunu göstermek amacıyla
kullanılabilir. Ana programın sonu haricindeki diğer "END" deyimlerinin
sonunda ";" işareti kullanılır.
Program Başlığı: Bir Pascal programının ilk kısmı, kullanılması programcının
seçimine bağlı olan "program başlığı" dır. Program başlığı, programa bir
isim vermek için kullanılır ve program isimlerinde İngiliz alfabesinde
bulunmayan Türkçe karakterler kullanılmamalıdır. Programa uzun isimler
verilebilir ancak sözcükler arasında boşluk bulunmamalıdır.
Tanımlama Bloğu: Pascal programının bu bölümünde program icra bloğunda
kullanılan sabitler ve değişkenlerin isimleri ve bunların ne tür
sabit/değişken olduğu bildirilir. Bu blok pascal programı içerisinde mutlaka
belirtilmelidir. Örnek olarak, aşağıda değişik veri tiplerindeki
değişkenlerin bir tanımlama bloğunda nasıl tanımlanabileceği gösterilmiştir.
Tanım ve Veri Tipi
S REAL
A STRING
B INTEGER
C LONGINT
F SHORTINT
H BOOLEAN
J BYTE
KL WORD
Algoritma
Kurma
Algoritma, verilen herhangi bir sorunun çözümüne ulaşmak için uygulanması
gerekli adımların hiç bir yoruma yer vermeksizin açık, düzenli ve sıralı bir
şekilde söz ve yazı ile ifadesidir. Algoritmayı oluşturan adımlar özellikle
basit ve açık olarak sıralandırılmalıdır. Algoritmik çözüm yöntemlerine ilk
örneği günlük yaşantımızdan verelim.
Örnek 1: Örneğimiz bir insanın evden çıkıp işe giderken izleyeceği yolu ve
işyerine girişinde ilk yapacaklarını tanımlamaktadır.Çözüm 1: Evden dışarıya
çık Otobüs durağına yürü Durakta gideceğin yöndeki otobüsü bekle Otobüsün
geldiğinde otobüse bin Biletini bilet kumbarasına at İneceğin yere
yakınlaştığında arkaya yürü İneceğini belirten ikaz lambasına bas Otobüs
durunca in İşyerine doğru yürü İş yeri giriş kapısından içeriye gir Mesai
arkadaşlarınla selamlaş İş giysini giy İşini yapmaya başla.
Yukarıdaki örnekte görüldüğü gibi, evden işe gidişte yapılabilecek işlemler
adım adım sırasıyla, kısa ve açık olarak tanımlanmaya çalışılmıştır.
Yukarıdaki algoritma kişinin otobüsü kaçırma olasılığı düşünülmeden
oluşturulmuştur. Kişi durağa geldiğinde bineceği otobüsü kaçırmış ise
algoritmamız aşağıdaki şekilde değiştirilebilir.
Çözüm 2: Evden dışarıya çık Otobüs durağına yürü Otobüsün saati geçmiş ?
Durakta gideceğin yöndeki bir sonraki otobüsü bekle Bir sonraki otobüs
gelene kadar 4. adımı uygula Otobüsün geldiğinde otobüse bin Biletini bilet
kumbarasına at İneceğin yere yakınlaştığında arkaya yürü İneceğini belirten
ikaz lambasına bas Otobüs durunca in İşyerine doğru yürü İş yeri giriş
kapısından içeriye gir Mesai arkadaşlarınla selamlaş İş giysini giy İşini
yapmaya başla.
Her iki örnekte görüldüğü gibi sorunu çözüme götürebilmek için gerekli olan
adımlar sıralı ve açık bir biçimde belirlenmiştir. Algoritmanın herhangi bir
adımındaki küçük bir yanlışlık doğru çözüme ulaşmayı engelleyebilir. Bu
nedenle algoritma hazırlandıktan sonra dikkatle incelenmeli ve varsa
adımlardaki yanlışlıklar düzeltilmelidir.
Programlamanın temeli olan algoritma hazırlanmasında dikkat çekici bir
nokta, aynı sorunu çözmek için hazırlanabilecek olası algoritma sayısının
birden çok olmasıdır. Başka deyişle, bir sorunun çözümü için birbirinden
farklı birden fazla sayıda algoritma hazırlanabilir. Bu da gösteriyor ki
herhangi bir problemin çözümü için birbirinden farklı yüzlerce bilgisayar
programı yazılabilir.
Bir bilgisayar programı için hazırlanacak olan algoritma da aynı şekilde
çözüm yolunu bilmeyen bir kişiye, çözüme ulaşmak için neler yapması
gerektiği anlatılıyormuş gibi hazırlanmalı ve eksik bir nokta bırakmaksızın
gerekli tüm adımları açık ve düzenli olarak içermelidir. Çözüm için
kullanılacak bilgilerin nereden alınacağı, nerede saklanacağı ve çözümün
program kullanıcısına nasıl ulaştırılacağı algoritma adımları arasında
belirtilmelidir.
Aşağıda değişik işlemlere ilişkin algoritma örnekleri verilmiştir.
Örnek 2: İki sayıyı toplamak için gerekli programa ait algoritmanın
oluşturulması.Algoritma:A1 :Birinci sayıyı girA2 :İkinci sayıyı girA3 :İki
sayının toplamını yapA4 :Toplamın değerini yazA5 :Bitir.
Bu tam bir algoritmadır. Sözcüklerin ortaya çıkaracağı yanlış anlamaların
ortadan kaldırmak amacıyla semboller ve matematik dilini gerektiren bazı
kısaltmalar kullanmak daha uygun olacaktır. Bir algoritma yazılırken şu
metot izlenmelidir:
1. Programda kullanılacak elemanları temsil etmek üzere uygun isimler veya
değişkenler seç. 2. Bazı isimlere başlangıç değeri olarak çözümün
gerektirdiği uygun değerler ver. 3. Gerekirse programa girilecek verileri
düzenle. 4. Cebirsel notasyon ve kararlar kullanarak aritmetik işlemleri
gerçekleştir. 5. Çıkışı düzenle. 6. Bitir.
Yukarıda iki sayının toplanması için oluşturduğumuz algoritmayı bu yeni
gereksinimlere uyarak yeniden yazalım.
Toplam adı için Z
Birinci Sayı için X
İkinci Sayı için Y değerleri kullanılırsa;
Algoritma:A1 :X değerini girA2 :Y değerini girA3 :Z X+YA4 :Z' yi yazA5
:Bitir
Görüldüğü üzere bu şekilde bir algoritma ile çözüm yolunu izlemek daha
kolaydır. Bundan sonra bu tip algoritma kullanılacaktır.
A6 :Bitir
Bu örnekte Ort değeri ile iki sayının ortalaması temsil edilmiştir.
Örnek 4: Beş sayının toplamını ve ortalamasını veren programa ait
algoritmanın oluşturulmasıToplam adı için TopOrtalama adı için OrtGirilen
sayılar için XArttırma için Sayac kullanılırsaAlgoritma:A1 :Top 0, Sayac 0A2
:X'i girA3 :Top Top+XA4 : Sayac Sayac +1A5 :Eğer Sayac <5 ise A2'ye gitA6 :Ort
Top/5A7 :Top ve Ort değerlerini yazA8 :Bitir
Örnek 5: Kenar uzunlukları verilen dikdörtgenin alan hesabını yapan programa
ait algoritmanın hazırlanması. Kenar uzunlukları negatif olarak girildiği
durumda veri girişi tekrarlanacaktır.Dikdörtgenin kısa kenarı :
aDikdörtgenin uzun kenarı : bDikdörtgenin alanı : Alan
Algoritma:A1 :a değerini girA2 :a<0 ise 1. adımı tekrarlaA3 :b değerini
girA4 : b<0 ise 3. adımı tekrarlaA5 :Alan a*bA6 :Alan değerini yazA7 :Bitir
Örnek 7: Verilen bir sayının faktöriyelini hesaplayan programın
algoritmasının oluşturulmasıSayının faktöriyeli :FakFaktöriyel degişkeni :XFaktöriyeli
hesaplanacak sayı :Y Algoritma:A1 :Fak 1, X 0A2 :Y'i girA3 :Y<0 ise 2. adımı
tekrarlaA4 :X X+1A5 :Fak Fak*XA6 :X<Y ise 4. adıma geri dönA7 :Fak değerini
yazA8 :Bitir
Bu algoritmada 1. adımda X e 0 ve Fak değişkenine 1 değeri atanıyor. 2.
adımda Y değeri giriliyor ve 3. adımda Y değerinin 0 dan küçük bir değer
olup olmadığı denetleniyor ve denetim sonucuna göre gerekli komut veriliyor.
4. adımda X'in değeri 1 arttırılıyor ve 5. adımda X için Fak değeri
hesaplanıyor. 6. adımda X in değerinin faktöriyeli hesaplanacak sayıdan
küçük olması durumunda 4. adımdan itibaren işlemlerin tekrarlanması komutu
veriliyor, X' in değerinin Y'ye eşit olması durumunda işlemler tamamlanarak
hesaplanan değerin yazdırılması işleminden sonra programın çalışması sona
ermektedir.
Akış
Diyagramları
Geliştirilecek olan yazılımın genel yapısının şematik gösterimine akış
diyagramı veya blok diyagramı adı verilir. Akış diyagramları, yazılımı
oluşturacak program parçalarını ve bu parçaların birbirleri ile olan
ilişkilerini belirler. Bir bilgisayar programının oluşturulmasında akış
diyagramlarının hazırlanması, algoritma oluşturma aşamasından sonra
gelmektedir. Bilgisayar programının oluşturulması sırasında algoritma
aşaması atlanarak, doğrudan akış diyagramlarının hazırlanmasına
başlanabilir. Programlama tekniğinde önemli ölçüde yol almış kişiler bu
aşamayı da atlayarak direkt olarak programın yazımına geçebilirler.
Akış diyagramlarının algoritmadan farkı, adımların simgeler şeklinde kutular
içinde yazılmış olması ve adımlar arasındaki ilişkilerin (iş akışı) oklar
ile gösterilmesidir.
Akış diyagramlarında kullanılan semboller, anlamları ve kullanış amaçları
aşağıdaki tabloda verilmiştir.
Tablo 1. İş akış diyagramlarında kullanılan semboller ve anlamları
Simge Simgenin Adı ve Anlamı
Elips Akış diyagramının başlangıç ve bitiş yerlerini gösterir. Başlangıç
simgesinden çıkış oku vardır. Bitiş simgesinde giriş oku vardır. Paralel
Kenar: Programa veri girişi ve programdan elde edilen sonuçların çıkış
işlemlerini gösterir. Dikdörtgen Aritmetik işlemler ve değişik atama
işlemlerinin temsil edilmesi için kullanılır. Eşkenar Dörtgen Bir karar
verme işlemini temsil eder. Altıgen Program içinde belirli blokların ard
arda tekrar edileceğini gösterir. Oklar Diyagramın akış yönünü ,yani her
hangi bir adımdaki işlem tamamlandıktan sonra hangi adıma gidileceğini
gösterir.
Ayrıntılı bir akış diyagramı, yazılımı oluşturan işlemleri ve ilişkilerini
en küçük detayına kadar belirler.
Bir bilgisayar programının geliştirilmesinde kullanılan programlama dili ne
olursa olsun bu programların akış diyagramlarında genel olarak yalnız üç
basit mantıksal yapı kullanılır. Bu mantıksal yapılardan en basiti sıralı
yapıdır. Sıralı yapı, hazırlanacak programdaki her işlemin mantık sırasına
göre nerede yer alması gerektiğini vurgular. Bu yapı sona erinceye kadar
ikinci bir işlem başlayamaz.
Mantıksal yapılardan ikincisi Karar Verme yapısıdır (Şekil 1.3). Programlama
sırasında If...Then... Else yapısı ile tanıyacağımız bu mantıksal yapılar,
birden fazla sıralı yapı seçeneğini kapsayan modüllerde, hangi şartlarda
hangi sıralı yapının seçileceğini belirler.
Üçüncü mantıksal yapı çeşidini tekrarlı yapılar oluşturmaktadır. Bu yapılara
Pascal programlama dilinde For(Şekil 1.4.a), While ve Repeat..Until (Şekil
1.4.b), yapısı adı da verilir. Şartlara göre değişik işlem gruplarının
yapılmasını sağlar. Bu yapı yukarıda sözü edilen iki yapının çeşitli
kombinezonların tekrarlanmasından oluşmuştur.
Söz konusu üç değişik yapı, değişik kombinezonlarda kullanılarak istenilen
işlevleri yerine getirecek programlar hazırlanabilir. Programların bu üç
basit yapı ile sınırlandırılması program modüllerinin daha kolay
tasarlanmasını sağlar. |
|
|
|