45
Alqoritmlər
çox rəngarəng olsalar da, onların hamısı
aşağıdakı ümumi xassələrə malikdir:
1.
Diskretlilik xassəsi. Hər bir alqoritm məsələnin həll
prosesini sadə addımların yerinə yetirilməsi ardıcıllığı şəklində
ifadə edir və hər bir addımın yerinə yetirilməsi üçün sonlu
zaman fasiləsi tələb olunur, yəni başlanğıc verilənlərlə icra
olunan hesabi və məntiqi əməliyyatların
yerinə yetirilməsi və
nəticənin alınması zamana görə diskret yerinə yetirilir.
2.
Müəyyənlik xassəsi. Hər bir alqoritm dəqiq,
birqiymətli olmalıdır. Bu xassəyə əsasən alqoritm yerinə
yetirildikdə istifadəçinin və onun istifadə etdiyi kompüterdən
asılı olmayaraq eyni nəticə əldə edilməlidir.
3. Kütləvilik xassəsi.
Müəyyən sinif məsələnin həlli
üçün qurulmuş alqoritm bu sinfə aid olan yalnız başlanğıc
qiymətləri ilə fərqlənən bütün
məsələlərin həllini təmin
etməlidir. Məsələn, 0
2
=
+
+
c
bx
ax
kvadrat tənliyi üçün
qurulmuş alqoritm a,b, c – nin ixtiyari qiymətləri üçün
məsələni həll edir.
4. Nəticəlilik və sonluluq xassəsi.
Alqoritm sonlu sayda
addımdan sonra başa çatmalı və verilmiş məsələnin həlli
tapılmalıdır.
Alqoritm aşğıdakı üsullarla təsvir olunur:
•
Sözlə
•
Blok-sxemlə
•
Alqoritmik dillə
•
Qrafalarla
Alqoritmlərin ən sadə təsvir forması təbii dillə -
sözlə
yazılış formasıdır. Alqoritmin mahiyyətinin izahını vermək
üçün bu üsul çox əlverişli olur. Məsələn, verilmiş iki A və B
ədədlərindən böyük olanının tapılması alqoritmini
sözlə ifadə
edək:
1.
A ədədindən B ədədini çıxın.
2.
Nəticədə mənfi qiymət alınarsa, B ədədinin böyük
olmasını bildirin.
46
3.
Müsbət qiymət alınarsa, A ədədinin böyük olmasını
bildirin.
4.
Sıfır alınarsa, hər iki ədədin bərabər olduğunu bildirin.
Alqoritmi əyani təsvir etmək üçün onu blok-sxem şəklində
vermək məsləhətdir. Bu təsvir forması sözlə yazılışa nisbətən
daha yığcam və dəqiqdir.
Blok-sxem blok adlanan aşağıdakı standart həndəsi
fiqurlardan ibarət olur:
Blokun təsviri
Blokun adı
Başlanğıc/son blok
Hesablama və ya əməliyyat
bloku
Daxiletmə bloku
Dövr bloku
Altproqram bloku
Çap bloku
Fayl bloku
Səhifələrarası birləşdirici
47
Hər bir blokda alqoritmin konkret bir və ya eyni tipli
bir neçə əmrini təsvir etmək olar. Bloklar bir-birilə şaquli və
ya üfüqi xətlərlə və ya oxlarla əlaqələndirilir. Şaquli xəttlər
üçün istiqamət olaraq yuxarıdan - aşağıya, üfüqi xəttlər
üçün isə soldan- sağa qəbul olunmuşdur.
Blok-sxemi Proqram Sənədlərinin Vahid Standartı
əsasında tərtib edilməlidir. Məsələn,
bu standarta əsasən
hesablama və ya əməliyyat blokunun minimal eni 10 mm
olmalı, bir blok-sxemdə verilən eyniadlı blokların ölçüləri
eyni olmalıdır. Məntiqi blok istisna olmaqla digər
bloklardan yalnız bir xət və ya ox çıxa bilər
1
. Məntiqi
blokdan isə iki xətt və ya ox çıxmalıdır. Blok - sxem bir
səhifəyə sığışmadıqda səhifələrarası birləşdirici vasitəsilə
blok-sxemi növbəti səhifədən davam etdirmək olar.
Səhifələrarası birləşdiricidə birləşdirci xəttin
və ya oxun
haradan haraya istiqamətləndirildiyini göstərmək lazımdır.
Alqoritmin alqoritmik dillə təsvir üsulu onun
kompüterdə icrası üçün tərtib olunur. Alqoritmin belə yazılışı –
kompüter üçün proqram adlanır.
Alqoritmlər xətti, budaqlanan və dövrü struktura malik
ola bilər:
Heç bir mərhələsi buraxılmadan və təkrarlanmadan,
bütün mərhələləri tam ardıcıllıqla yerinə yetirilən alqoritmə
xətti alqoritm deyilir.
Məsələn, Ücbucağın sahəsinin
hesablanması məsələsinin alqoritmi xətti alqoritmidir
.
1
Lakin bir neçə ox girə bilər.
48
Qoyulmuş şərtdən asılı olaraq alqoritm məsələnin
həlli variantlarından birini seçməyə imkan verirsə, belə
alqoritmə budaqlanan alqoritm deyilir.
Budaqlanmadan iki halda istifadə olunur:
1.
Alqoritmdə elə addımlar olur ki, müəyyən şərtdən asılı
olaraq onları buraxmaq lazım gəldikdə;
2.
Müəyyən şərtdən asılı olaraq alqoritim müəyyən
əməliyyatlardan birini yerinə yetirdikdə.
Blok-sxemdə budaqlanma şərti məntiqi blokla
göstərilir və ondan iki ox çıxır: "hə" oxu şərt ödəndikdə,
"yox" oxu isə şərt ödənmədikdə yerinə yetiriləcək bloku
müəyyən edir.
Məsələn,
kvadrat tənliyin həqiqi kökünün hesablanması
alqoritmi budaqlanan alqoritmdir.
S=a*b
S
Başla
a, b
Son