363
Çoxluq haqqında riyaziyyatdan məlum olan anlayışlar
çoxluq tipli
verilənlər ücün də eynidir və onlar üzərində eyni əməliyyatlar aparmaq olar
1
.
Çoxluq tip dəyişənlər üzərində aşağıdakı əməliyyatları yerinə yetirmək
mümkündür:
mənimsətmə əməliyyatı;
Mənimsətmə əməliyyatı mənimsətmə operatoru
2
vasitəsilə yerinə yetirilir və
coxluq tip dəyişənə element və ya digər çoxluq tip dəyişən mənimsədilməsini
təmin edir.
- müqayisə əməliyyatı;
Müqayisə əməliyyatları =, <>,>=,<= operatorları vasitəsilə yerinə yetirilir və
müvafiq olaraq iki çoxluğun ekvivalentliyini
3
, fərqli olmasını
4
və bir çoxluğun
digər çoxluğa daxil olmasını
5
müəyyən edir. Məsələn,
Proqram a1;
var
a,s: set of 0..3;
begin
a:=[2,1,0,3];
s:=a;
writeln (s=a);
writeln (s<>a);
writeln (s<=a);
writeln (s>=a)
end.
Verilmiş proqramda a və s çoxluq tipli dəyişənlər elan olunur. a dəyişəninə
çoxluğun elementləri mənimsədilir. s dəyişəninə isə a dəyişəni mənimsədilir. s və a
çoxluqlarının ekvivalentliyi, fərqli olması,
a
s
∈
və
s
a
∈
şərtləri
yoxlanaraq nəticə
write
xaricetmə proseduru vasitəsilə ekrana göndərilir. s və a çoxluqları
ekvivalent olduğundan nəticə aşagakı kimi olacaq:
True
False
True
True
birləşmə əməliyyatı;
6
Birləşmə əməliyyatı çoxluq üçün “+” operatoru vasitəsilə yerinə yetirilir.
Məsələn,
Program a2;
var
s1,s2,s3,s: set of byte;
1
Əməliyyatlar yalnız bütövlükdə çoxluq üzərində aparılır.
2
Bax: Operatorlar
3
A və B çoxluqları eyni elementlərdən ibarət olarsa, onda bu çoxluqlar ekvivalentdir.
4
A və B çoxluqlarının heç olmasa
bir elementi fərqlənərsə, bu çoxluqlar fərqli olacaq.
5
B-nin bütün elementləri A çoxluğuna daxil olduqda B çoxluğu A çoxlugunun altcoxluğudur.
6
A və B çoxluqlarının birləşməsi (A+B) bu çoxluqların elementlərindən ibarət olan üçüncü bir
çoxluqdur.
365
c:=s1+s2;
writeln (5 in a,' ', 5 in b, ' ',3 in c);
end.
Proqramda çoxluqlardan istifadə olunması nəticəsində məsələnin həlli
alqoritmi sadələşir, müəyyən
hallarda yaddaşa qənaət edilir, kompilyasiya və
yerinə yetirilmə vaxtı azalır. Çoxluq tipli dəyişənlərdən istifadə olunmasının
çatışmayan cəhəti odur ki, onları giriş və çıxış prosedurlarında istifadə etmək
olmaz. Bu hallarda proqramlaşdırıcı özü uyğun giriş-çıxış prosedurlarını
yazmalıdır.
Çoxluqların bir növü də sabit çoxluqlardır.
Sabit çoxluqlar bir-birindən
vergüllə ayrılan və kvadrat mötərizənin arasında yerləşən elementlərdən ibarətdir.
2.12. Massivlər
Massivlər-verilənlərin strukturlaşmış növü olub, eyni tipli sonlu sayda
elementlərdən ibarətdir. Massivin hər bir elementinə onun elementlər ardıcıllığında
mövqeyini birqiymətli təyin edən indeks uyğundur. Indeks olaraq həqiqi tip istisna
olmaqla ixtiyari sadə tipli dəyişən
və ya ifadə iştirak edə bilər
1
. Massivlər aşağıdakı
formada elan olunur:
array [indeks]
of < elementlərin tipi>;
Massivin elementinin tipi öz növbəsində massiv ola bilər. Belə massiv
ikiölçülü massiv adlanır. İndeksin sayı massivin ölçüsünü müəyyən edir. Belə ki,
massivin elanı zamanı bir indeks verilirsə, həmin massiv bir ölçülü,
iki indeks
verilirsə iki ölçülü,
n
indeks verilirsə
n
ölçülü massiv adlanır. Massivin ölçüsü
kompyuterin operativ yaddaşının tutumu ilə məhdudlaşır. Adətən, birölçülü
massivlərdən vektorları, ikiölçülü massivlərdən matrisləri,
çoxölçülü massivlərdən
isə tenzorları təsvir etmək üçün istifadə olunur. Məsələn, 100 elementdən ibarət B
vektorunu aşağıdakı formada elan etmək olar.
type
vek:
array [1..100]
of integer;
var
B:vek;
və ya
var
B:
array [1..100]
of integer;
Eyni qaydada ikiölçülü massivlər də elan olunur. Məsələn, A matrisi
proqramda aşağıdakı formada elan olunur.
1
İndeksin tipi onun dəyişmə sərhəddini müəyyən edir.