73
nə bərabər olacaqdır, fraqmentin st sətrində yoxdursa, funksiya sıfır qiyməti ala- caqdır.
Nümunə:
Length (’Azərbaycan’); {nəticə 10}
-Concat(s_1, s_2,_n: string): string; Bir neçə sətri birləşdirir.
Nümunə:
var st: string; Mt1, mt2,: string[18];
...
mt1:= ’ Azərbaycan Dövlət’; mt2:= ’Aqrar Universiteti’; st:=concat(mt1,mt2);
Nəticə: ’ Azərbaycan Dövlət Aqrar Universiteti’ olacaqdır.
Prosedurlar:
-Delete (st:string, İndex, count: integer);
st sətindən, index mövqeyindən başlamaqla Count sayda simvol silir. İnsert (fraqment, st: string, index:integer);
st sətrinə index mövqeyindən başlamaqla fraqment əlavə edir. str((ədəd, sətir) – tam və ya həqiqi ədədi sətir tipli təsvirə çevirir val( sətir,ədəd, kod) –sətir tipli ədədi ədədə çevirir.
Yazılar
Yazı tipi- qeyri bircins strukturlu verilənlərin tipik nümayəndəsidir.
Massiv, çoxluq və fayl öz tərkibinə eyni tip elementləri daxil etdiyi halda yazılar öz tərkibinə ixtiyari sayda müxtəlif tipli verilənləri ( sadə dəyişənlər, mas- sivlər, çoxluqlar, yazılar, və fayllar) daxil edir. Yazıya daxil olan bu verilənlər yazının sahələri adlanır. Yazı tipinin təsvirində RECORD və END xidməti sözlə- rindən istifadə edilir. Yazı tipinin ümumi yazılış forması aşağıdakı kimidir:
Type
= record S1:T1; S2:T2;…; Sn:Tn; end;
Burada Si- yazı sahələrinin adları, Ti yazı sahələrinin tipləridir.
Yazı tipi təsvir edildikdən sonar bu tipin dəyişənləri və ya tipləşdirilmiş sabitləri verilə bilər. Yazı tipli sabitlərin təsvirində yazının bütün sahələrinin qiymətlərilə bərabər onların identifikatorları da göstərilir. Yazı tipli tipləşdirilmiş sahələrdən istifadə etməyə icazə verimir. Yazı sahələrinə müraciət bir-biri ilə nöqtə ilə ayrılan dəyişən və sahənin adının göstərilməsilə həyata keçirilir. Sahələrə müra- ciətdə hər dəfə yazının adını tıkrar yazmamaq üçün With operatorundan istifadə olunur.
Turbo Pascal-da sadə və variantlı yazılardan istifadə olunur.
Sadə yazılar bir və ya bir neçə sahədən ibarətdir ki, hər bir sahənin adı və tipi onların təsvirində göstərilir. Bunu tələbələrin müvəffəqiyyətini əks etdirən yazı üzrə izah edə bilətik: sadə yazıda yalnız tələbənin bir semestrinin qiymətlərini yazmaq nəzərdə tutulursa, hər semestrin fənləri dəyişdiyindən bu yazıya bütün fən- lər daxil edilməlidir. Bu isə lazımsız informasiyanın saxlanmasına gətirilir. Bundan başqa hər bir tələbə üçün yaddaşda bütün fənlər üçün yer ayrılır. Bu halda variantlı yazılardan istifadə etmək məqsədə uyğundur.
74
Bəzən proqramlarda yalniz bəzi sahələrinə görə bir-birindən fərqlənən bir necə “yazы”dan istifadə etmək lazim gəlir. Belə hallarda proqrami təşkil edən ope- ratorlarin sayini azaltmaq, yaddaşa qənaət etmək, proqramin tərtib olunmasini sadələşdirmək, nəticədə proqrami daha oxunaqli etmək məksədilə bir necə adi (fiksatsiyali) “yazы” əvəzinə bir “variantlы” yazыdan istifadə etmək olar.
Variantlы“yazы” iki hissədən ibarət olur.
-
Birinci hissə adi fiksatsiya “yazы”dan
-
İkinci hissə secmə əlamətindən asli olaraq variant operatoru (case) vastəsilə secilən variantlar siyahisindan
Qeyd edək ki,variantli yazini təşkil edən fiksatsiyali (yənidəyişməz) hissə əvvəl, variantlar siyahisi isə sonra yazilmalidir. Başqa sozlə ,variantli “yazы”ya daxil olan case operatorundan sonra hec bir “yazы” sahəsi yazmaq olmaz.
Bunları tələbələrin müvəffəqiyyətini əks etdirən yazı üzrə izah edə biləрik: sadə yazıda yalnız tələbənin bir semestrinin qiymətlərini yazmaq nəzərdə tutulursa, hər semestrin fənləri dəyişdiyindən bu yazıya bütün fənlər daxil edilməlidir. Bu isə lazımsız informasiyanın saxlanmasına gətirilir. Bundan başqa hər bir tələbə üçün yaddaşda bütün fənlər üçün yer ayrılır. Bu halda variantlı yazılardan istifadə etmək məqsədə uyğundur.
Variantlы yazыda sadə yazıda olduğu kimi bütün mümkün sahələr təsvir olunur. Amma yaddaşda cari halda lazım olan variant üçün yer ayrılır. Tələbənin soyadı, adı, atasının adı ünvanı yazının sadə hissəsi, semestr sahəsi isə variantlı sahəsidir ki, burada I və II semestrdə keçilən fənlər üçün ayrıca yer ayrılır.
Çoxluq, çoxluqlar üzərində əməllər
Çoxluq- Proqramlaşdırmada “Çoxluq” termini onun riyazi anlayışına uyğun olaraq istifadə olunur. Fərq ondadır ki, Turbo Pascal-da çoxluğun elementləri yalnız sıra tipi olmalıdır. Hər hansı çoxluğun elementləri bir tipdən olmalıdır ki, bu da baza tipi adlanır. Baza tipinin qiymətlərinin maksimal sayı onun gücü adlanır ki, bu da 256-nı aşa bilməz (0÷255). Buna görə çoxluğun baza tipi kimi Shortlnt, integer, longlnt, Word-dən istifadə etmək olmaz. Çoxluq tipini təyin etmək üçün set və of xidməti sözlərindən istifadə olunur, sonra bu çoxluğun elementləri göstərilir.
Məs., Type
Alfa = set of ‘A’.. ‘Z’ ; { Böyük latın hərfləri çoxluğu}
Number =set of ‘0’.. ‘9’; { ‘0’÷‘9’ –a kimi simvollar çoxluğu} Ten = set of 0.. 9; { 0÷9 –a kimi rəqəmlər çoxluğu}
Çoxluq tipinin sabitlərinin hər bir komponenti, ya tipə uyğun ayrı sabit kimi, ya da bir-biri ilə “..” simvolları ilə ayrılan interval qiymətləri ilə təsvir olunur.
Çoxluqlar üçün aşağıdakı əməliyyatlar təyin olunub:
*- çoxluqların kəsişməsi;
+- çoxluqların birləşməsi;
- çoxluqların fərqi;
=- iki çoxluğun ekvivalentliyinin yoxlanması;
<>- iki çoxluğun qeyri-ekvivalentliyinin yoxlanması;
75
<=- B <=A nəticəsi doğrudursa, B çoxluğu A çoxluğunun alt çoxluğudur, əks halda yox.
>= B>=A –nin nəticəsi doğrudursa, A çoxluğu B çoxluğunun alt çoxluğudur, əks halda yox.
İN -X in A –nın nəticəsi doğrudursa, X çoxluğu A çoxluğunun elementidir, əks halda yox.
Massivlər
Massivlər- verilənlərin strukturlaşmış növü olub, eyni növə malik qeyd olunmuş sayda elementlərdən ibarətdir. Massivin elementlərini indeksləşdirmək yolu ilə onun hər bir elementinə müraciət etmək olar. Massivin indeksi anlayışı vektorun elementlərinin indeksi anlayışı ilə eynidir.
İndekslər – həqiqi növdən başqa istənilən skalyar növə malik ifadələrdir. İndeksin növü onun dəyişmə sərhəddini müəyyən edir. Massivi təsvir etmək üçün ARRAY OF sözündən istifadə olunur.
Operatorun ümumi formatı belədir:
TYPE
=ARRAY[indeksin növü] OF < elementlərin növü>; VAR
:; və ya
VAR
: ARRAY [indeksin növü] OF < elementin növü>; Misal:
TYPE
K=ARRAY[1 . . 200] OF CHAR; A=(A1,A2,A3,A4);
VAR C:K;
D:ARRAY[1 . . 60] OF INTEGER; B:ARRAY[1 . . 4] OF A;
Burada, K, C, D, B massivlərdir. K və C-nin elementlərinin sayı 200-ə bəra- bərdir. D massivinin elementlərinin sayı 60-a, B-isə 4-ə bərabərdir.
Hər bir massivin elementlərinin növü OF işçi sözündən sonra gələn sözlərlə müəyyən olunur.
Massivin təsviri zamanı bir indeks verilərsə ikiölçülü, n indeks verilərsə n – ölçülü adlanır. Adətən ikiölçülü massivlərdən matrisləri təsvir etmək üçün istifadə olunur. Massivi təsvir etmək üçün əvvəlcə təyin olunmuş sabitdən də istifadə et- mək olar:
CONST N1=6; N2=10; VAR
MAS: ARRAY [1…N1, 1…N2] OF REAL;
Burada, MAS –elementləri həqiqi növə malik olan matrisdir.
Dostları ilə paylaş: |