372
Readln(Kitab.Serlohve);
Readln(Kitab.Nesr_ili);
Biblio_yazi:= Kitab.avtor+' '+Kitab.Serlohve;
Writeln (Biblio_yazi);
End.
Praktikada eyni tipli yazılardan istifadə etdikdə elementləri yazılar olan
massivlərdən istifadə etmək əlverişli olur. Məsələn, 10 ədəd kitabın
biblioqrafik
təsvirini daxil etmək və çap etmək tələb olunarsa elementləri
Biblio
yazı tipi olan
massivdən istifadə etmək olar.
Program Biblioqrafik_kataloq;
type
Biblio=record
Avtor:string[50];
Serlohve:string[100];
Nesr_ili:integer;
Nesr_yeri:string[20];
Nesriyyat:string[30];
Cild:byte;
Sehife:byte;
end;
Var
i:byte;
Book:array[1..10] of Biblio;
Bib_yazi:array[1..10] of string[200];
Begin
for i:=1 to 10 do begin
Readln(Book[i].avtor);
Readln(Book[i].Serlohve);
Readln(Book[i].Nesr_ili);
Bib_yazi[i]:= book[i].avtor+' '+book[i].Serlohve;
Writeln (Bib_yazi[i]);
End;End.
2.13.1. Birləşdirmə operatoru
Yazı identifikatoru və sahə identifikatoru çoxsimvollu olduqda yazı
sahələrinə müraciəti təmin edən çox uzun düzəltmə adlar yaranır və yazı
identifikatoru bir neçə dəfə təkrar olunur. Buna
müvafiq olaraq proqram mətni
xeyli böyüyür. Proqramın mətnini azaltmaq və onu kompakt şəkildə yazmaq üçün
birləşdirmə operatorundan istifadə olunur. Bu operatorun yazılış formatı aşağıdakı
kimidir:
with do ;
Birləşdirmə operatorunda yazı tipli dəyişənin adını bir dəfə göstərməklə
onun sahələrinin adları ilə adi dəyişən kimi işləmək olar. Məsələn, kitabın
biblioqrafik təsvirini aşağıdakı proqram vasitəsilə də daxil etmək və çap etmək
olar.
Program Biblioqrafik_kataloq;
373
type
Biblio=record
Avtor:string[50];
Serlohve:string[100];
Nesr_ili:integer;
Nesr_yeri:string[20];
Nesriyyat:string[30];
Cild:byte;
Sehife:byte;
end;
Var
Kitab: Biblio;
Biblio_yazi:string[200];
Begin
With kitab do
Begin
Avtor:='Qurbanov Azad Isa o.';
Serlohve:='Informatika';
Nesr_ili:=2009;
Biblio_yazi:= avtor+' '+Serlohve;
End;
Writeln (Biblio_yazi);
End.
Turbo Pascal dilində bir-birinə daxil olan yazılardan da istifadə etmək olar. Bu
halda yazının sahəsi yenə də yazı ola bilər və uyğun birləşdirmə operatoru
aşağıdakı kimi yazılır:
with R
1
, R
2
,…R
n
do S
;
burada
R
1
,R
2
,…,R
n
yazı növlü dəyişənlərdir.
S
isə Turbo
Pascal dilinin
operatorlarıdır. Əgər
R
1
,R
2
,…,R
n
dəyişənlərində eyni adlı olan varsa, onda
onlardan axırıncısı
S
operatorunda olan uyğun tipə birləşdirilir.
2.13.2. Variantla olan yazılar
Variant operatorundan istifadə etməklə bir neçə yazını bir yazı şəklində
birləşdirmək olar. Belə yazıya birləşmiş yazılar və ya variantla olan yazılar deyilir.
Variantla olan yazılar iki hissədən ibarət olur:
- ümumi hissə;
- variantla olan hissə.
Ümumi hissədə yazının təsvir etdiyi obyektlər müəyyənləşdirilir. Variantla
olan hissə
Case
operatoru vasitəsilə təyin edilir.
Bu hissədə xüsusi sahə olan
əlamət sahəsinin köməyi ilə verilmiş anda hansı variantın seçilməsi müəyyən edilir.
Variantla olan yazıların ümumi yazılış formatı aşağıdakı kimidir:
Type
=record
<ümumi hissə>;