İ N F O R M A T İ K A
____________________________________________________________
164
ALQORİTM VƏ ONUN TƏSVİR ÜSULLARI
Alqoritm riyaziyyatın mühüm anlayışlarından biri olub, hələ kompüter
yaranmamışdan əvvəl mövcud idi. Bu anlayış riyaziyyatda eyni tip məsələlərin
həllində ümumi üsulların axtarılması ilə əlaqədar olaraq meydana çıxmışdır. Onluq
ədədlər üzərində hesab əməllərinin aparılması qaydaları (alqoritmləri) adlanır.
Alqoritm
– latınca qayda-qanun deməkdir. Riyazi mənada məsələnin həlli
ardıcıllığına alqoritm deyilir.
Ümumiyyətlə, alqoritm verilmiş məsələnin həlli üçün lazım olan əməliyyatları
təyin edən və həmin əməliyyatların hansı ardıcıllıqla yerinə yetiriləcəyini göstərən
formal yazılışdır.
Alqoritm həll olunan məsələnin xarakteri ilə bağlı olduğu üçün onun
yaradılmasında ümumi qaydalar yoxdur. Lakin hər bir alqoritm tərtib edilərkən
onun müəyyən tələblərə cavab verməsi nəzərə alınmalıdır. Bu tələblərə alqoritmin
xassələri deyilir.
Alqoritmin əsas xassələri aşağıdakılardır:
1. Alqoritm
diskret
olmalıdır, yəni onun təsvir etdiyi proses ayrı-ayrı
elementar addımlar ardıcıllığına bölünməli və bu bölgü elə olmalıdır ki, alqoritmin
yazılışı bir-birindən dəqiq ayrılmış şəkildə olsun.
2
.
Alqoritmin tərtibi məsələnin həllini ardıcıl yerinə yetirilən mərhələlərə
bölmək deməkdir. Bu zaman əvvəlki mərhələlərin nəticələri sonrakı mərhələlərdə
istifadə oluna bilər. Bu alqoritmin
müəyyənlik
xassəsini təşkil edir.
3
.
Alqoritmin
kütləvilik
xassəsi iki tələbi nəzərdə tutur:
müəyyən məsələnin həlli üçün qurulmuş alqoritm həmin tipdən olan bütün
məsələlərin həlli üçün yararlı olmalıdır;
alqoritm elə təsvir olunmalıdır ki, ondan hamı istifadə edə bilsin.
4. Alqoritmdəki mərhələlərin və onları təşkil edən əməliyyatların sayı sonlu
ədəd olmalıdır ki, onların yerinə yetirilməsi axtarılan nəticəyə gətirib çıxara bilsin.
Bu alqoritmin
nəticəvilik
(sonluluq) xassəsi adlanır.
Alqoritmdəki hesab əməlləri arasındakı məntiqi əlaqələr kompüterin qəbul
edə biləcəyi şəkildə verilməlidir.
Alqoritmi təsvir etmək
– onu ayrı-ayrı mərhələlərə bölüb, hər mərhələdə
nə etmək lazım olduğunu müəyyən etmək və bu mərhələlərin yerinə yetirilməsi
ardıcıllığını göstərmək deməkdir.
Alqoritmin istənilən istifadəçiyə aydın olması üçün onu təsvir etməyin
ümumi qəbul edilmiş qaydaları yaradılmışdır. Bu qaydalara aşağıdakılar aiddir:
təbii dildə (sözlərlə təsvir);
qrafik formada (blok – sxem təsviri);
alqoritmik dildə təsvir.
Keçmiş dövrlərdən indiyə kimi alqoritmi təsvir etmək üçün adi danışıq dilinin
vasitələri istifadə olunur.
İ N F O R M A T İ K A
____________________________________________________________ 165
Misal. ax
2
+ bx +c =0
tam kvadrat tənliyinin həll alqoritmini sözlə təsvir
etməli.
1. Alqoritmin başlanğıcı;
2. a, b, və c əmsallarını maşına daxil etməli;
3. D = b
2
– 4
a c diskriminantını hesablamalı;
4. Diskriminantın müsbət olmasını yoxlamalı;
D >0 olarsa, 9-cu addıma keçməli: Əks halda 5-ci addıma keçməli.
5. D=0 şərtini yoxlamalı: D=0 olarsa, 7-ci addıma keçməli. Əks halda
(D<0) 6-cı addıma keçməli.
6. Çap etməli: “Tənliyin kökü yoxdur”, sonra 11-ci addıma keçməli.
7. Hesablamalı:
а
в
x
2
8.
X
-in qiymətini çap edib, 11-ci addıma keçməli;
9. Hesablamalı:
,
2
/
)
(
1
a
D
в
x
a
D
в
x
2
/
)
(
2
10. X
1
və X
2
– nin qiymətlərini çap etməli.
11. Son.
Alqoritmin təsvirinin çox münasib və əyani vasitəsi onun blok-sxemlər
vasitəsilə göstərilməsidir. Bu halda bütün hesablama prosesi ayrı-ayrı mərhələlərə
bölünür. Hər bir mərhələdə yerinə yetiriləcək funksiyadan asılı olaraq həmin
mərhələlər kağız üzərində şərti qrafik işarələrlə (simvollarla) təsvir olunur.
Məsələlərin kompüterlərdə həlli və xüsusi mürəkkəb alqoritmlərin təsviri
zamanı blok-sxemlərdən istifadə edilməsinə daha geniş yer verilir, çünki
alqoritmlərin təsviri zamanı adətən alqoritmin hər bir addımına (mərhələsinə) bir
blok uyğundur. Lakin bir blokda bir neçə eyni tipli mərhələ və ya əksinə, bir
mərhələ bir neçə blokda təsvir oluna bilər. Bloklar standart işarələrdən istifadə
olunmaqla təşkil olunur və bir-biri ilə şaquli, yaxud üfqi xətlərlə birləşdirilir. Lazım
gələrsə, blokları nömrələmək olar.
başlanğic və ya son blok
hesablama bloku
giriş əməliyyatları bloku
çap bloku