MÖVZU 5.2 TURBO PASCAL dilində proqram tərtibinin ümumi qaydaları. TURBO PASKAL dilinin operatorları Plan:
TURBO PASCAL dilində proqram tərtibinin ümumi qaydaları
Turbo Paskal dilinin mənimsəmə, şərti və şərtsiz keçid, seçmə operatorları
Dövri strukturlu alqoritmlərin proqramlaşdırılması
Turbo Pascal dilində proqram tərtibinin qaydaları və standart modullar Turbo Pascal dilində tərtib edilən proqramın ümumi quruluşu aşağıdakı kimi olmalıdır:
{Proqram başlığı}
Program proqramın adı;
{İstifadə olunan proqram modullarının təsviri bölməsi}
Uses Istifadə olunan proqram modullarının siyahısı;
{Təsvirlər bölməsi}
Label Nişanların təsviri;
const Sabitlərin təsviri ;
Type tiplərin təsviri;
var dəyişənlərin təsviri;
Prosedur və funksiyaların təsviri;
{operatorlar bölməsi}
begin
operator 1;
operator 2;
. . . . . . . . . . . .
. . . . . . . . . ..
operator n;
end.
İstifadə edilən istənilən bölmə ya konkret élan olunmuş proqram elementlərindən, ya da təyin olunmuş əməliyyatı yerinə yetirən operatorlardan təşkil olunmuş bir və ya bir neçə cümlələrdən ibarət olur. Cümlələr bir-biri ilə nöqtəli vergüllə ayrılır. Turbo Pascalda proqram başlığı məcburi deyil, əgər istifadə olunarsa, onda o aşağıdakı sintaksis formada yazılır:
PROGRAM ad ( proqramın parametrləri);
Pascal dilinin standartında bölmələr yuxarıdakı ardıcıllıqla yerləşməlidir. Turbo Pascalın bəzi xüsusiyyətləri mövcuddur. Belə ki, proqram başlığı və istifadə olunan modulların təsviri bölməsi istisna olmaqla bölmələrin yerləşmə ardıcıllığı sərbəstdir. Bundan başqa bir neçə eyni bölmə yaratmaq olar. Proqramda istifadə olunan elementlər ya proqram mətninin əvvəlində təyin olunmalı, ya da dilin qabaqcadan təyin olunmuş elementləri olmalıdır. Turbo Pascalın bu xüsusiyyətləri olmasına baxmayaraq dilin standartında nəzərdə tutulan ardıcıllığa riayət etmək lazımdır. Yalnız prinsipcə vacib olduqda ardıcıllığın dəyişdirilməsi məqsədəuyğundur. Proqram gövdəsi BEGIN sözü ilə başlayır və proqramın sonunu göstərən END sözü ilə qurtarır, sonda isə nöqtə qoyulur.
Əgər istifadəçi proqram daxilində müəyyən şərhlər vermək istəyirsə, onda (* *), { } işarələrindən istəfadə etməlidir. Məsələn:
(* Bu proqram Turbo Paskal dilində tərtib edilib!*) və ya
{Mənim birinci proqramım} Proqram daxilində dəyişənlərin qiymətlərini birbaşa və klaviaturadan verməklə daxil etmək mümkündür. Birbaşa daxil etmədə mənimsəmə operatorundan istifadə edilir. Məsələn, Y dəyişəninə 3 qiymətini mənimsətmək istəyiriksə bunu aşağıdakı kimi yazırıq:
Y3; Əgər dəyişənin qiymətini klaviaturadan daxil edəcəyiksə, onda
READ (Y); və ya
READLN(Y); yazırıq. READ standart prosedurasından istifadə etdikdə dəyişən daxil edildikdən sonra yeni dəyişənin daxil edilməsi həmin sətirdə gözlənilir, READLN istifadə edildikdə isə yeni dəyişənin qiyməti növbəti sətirdə, yəni yeni sətirdən daxil edilməlidir. Bu proseduranın ümumi yazılışı aşağıdakı kimidir:
READ (daxil ediləcək dəyişənlərin adlarının siyahısı); READLN (daxil ediləcək dəyişənlərin adlarının siyahısı); Əgər bu proseduraların yazılışı aşağıdakı şəkildədirsə
READ (fayl dəyişəni, daxil ediləcək dəyişənlərin adlarının siyahısı); READLN (fayl dəyişəni, daxil ediləcək dəyişənlərin adlarının siyahısı); onda dəyişənin qiyməti fayl dəyişəni ilə adlandırılmış fayldan və ya məntiqi qyrğudan daxil edilir.
Proqramın nəticələrini, eləcə də sabit və dəyişənlərin qiymətlərini ekrana çıxarmaq məqsədilə aşağıdakı standart proseduralardan istifadə edilir:
WRİTE (sabit və dəyişənlərin siyahısı); WRİTELN (sabit və dəyişənlərin siyahısı); Bunlarda fərq ondan ibarətdir ki, birincidə siyahıdakı sabit və dəyişənlərə uyğun qiymətlər bir sətrə çıxarılır və növbəti dəfə bu proseduraya müraciətdə də yeni qiymətlər də həmin sətrə çıxarılacaq. İkinci prosedura yerinə yetirildikdə isə göstərilən sabit və dəyişənlərə uyğun qiymətlər ekrana verildikdən sonra, növbəti müraciətdə nəticələr avtomatik olaraq yeni sətrə keçilərək verilir.
Əgər nəticələrin hər hansı fayl və ya məntiqi qurğuya (diskə, printerə və s.) çıxarılması nəzərdə tutulubsa, onda qaydalar eyni ilə qalmaqla aşağıdakı yazılışdan istifadə edilir:
WRİTE (fayl dəyişəni, sabit və dəyişənlərin siyahısı); WRİTELN (fayl dəyişəni, sabit və dəyişənlərin siyahısı); Qeyd edək ki, proqramın yerinə yetirilməsində proqram dilinin imkanları və daxili ehtiyatlarından yararlanmaq məqsədilə dilin standart modullarından istifadə edilir. Bu istifadə edilən modulların adları USES sözündən sonra aralarında vergül qoyulmaqla göstərilir. Turbo Paskal dilinin standart modulları aşağıdakılardır:
SYSTEM- Turbo Paskalın bütün standart funksiya və proseduralarını özündə saxlayır. Bu modulu göstərmək lazım deyil, çünki o avtomatik yüklənir;
CRT- Bu modulun köməyi ilə ekranın mətn rejiminin idarə edilməsinin standart funksiya və proseduraları işçi vəziyyətə gətirilir, adətən bu bütün proqramlarda göstərilir:
PRİNTER- printerə çıxışı təmin edir. Printerə çıxış üçün modul göstərildikdən sonra çıxış proseduru olan WRITE və ya WRİTELN daxilində LST fayl dəyişəni göstərilməlidir. Məsələn x dəyişəninin qiymətini çap etmək üçün
WRİTELN (LST, X:8:2); yazılır. Burada x- həqiqi tiplidir, onun qiymətindəki ümumi rəqəmlərin sayı 8, vergüldən sonrakı rəqəmlərin sayı isə 2-dir.
GRAPH- Ekranın qrafik rejiminin standart prosedura və funksiyalarını özündə saxlayır və qrafik rejimdə işləyərkən onun göstərilməsi məcburidir;
TURBO3 və GRAPH3- Turbo Paskalın əvvəlki versiyaları ilə uyğunlaşmanı təmin edir (uyğun olaraq adi proqram və qrafik rejimlərdə):
DOS- PS DOS (MS DOS) sisteminin proqramlarına çıxışı təmin edir;
OVERLAY- Bu modul proqramlaşdırmada overleylərdən istifadəyə imkan verir. Adətən overleylər iri həcmli proqramlarla işləyərkən lazım olur. Proqram həcmcə iri olduqda yaddaş çatışmamazlığı problemi ilə qarşılaşmaq olar. Əgər OVERLAY modulunun imkanlarından istifadə olunsa proqram yerinə yetirilərkən yalnız əməli yaddaşa proqram daxilində olan və cari vaxtda istifadəsi tələb olunan proqram cağrılır. Ona müraciət qurtardıqda avtomatik olaraq geriyə qaytarılaraq yeni cağrilan funksiya və ya prosedura əməli yaddaşa yüklənir. Beləliklə yaddaş çatışmamazlığı aradan qaldırılır.