İ N F O R M A T İ K A
____________________________________________________________
166
dövri proses bloku
məntiqi
şərt bloku
əvvəldən hazırlanmış alqoritmlərdən və ya
proqramlardan istifadə olunma bloku
Blok-sxemlərdə hesablama və məntiq blokları üstünlük təşkil edir. Birinci tip
bloklarda hesablama proseduraları yerinə yetirilir, ikinci tip bloklarda isə müəyyən
məntiqi şərtlər yoxlanılır. Hesablama proseduralarını müxtəlif formada göstərmək
olar. Əgər hesablama kiçik düsturla ifadə olunursa, onu blok daxilində yazırlar.
Əgər düstur böyükdürsə, onda prosedura blokda şərti simvol (ədəd və ya söz) ilə
göstərilir və blok-sxemin altından isə onun mənası izah edilir.
İstənilən məsələ “Başlanğıc” və “Son” blokları arasında təsvir edilir.
Hesablama blokları (düzbucaqlılar da deyilir) və məntiqi şərti bloklar (keçid
bloku da adlanır və ya romblar da deyilir)
blok-sxemdə əsas bloklardan, istifadə
edilmə məqsədlərinə və aralarındakı əlaqə və formalarına görə bir-birindən
əhəmiyyətli dərəcədə fərqlənirlər. Sadə hesab əməllərindən ibarət olan
hesablama prosesində əməllər bir-birinin ardınca yerinə yetirilir və blok-sxemlər
düzbucaqlı şəklində təsvir olunur.
Müəyyən bir məntiqi ifadənin doğru olub-olmadığından asılı olaraq
alqoritmin davametmə istiqamətinin seçilməsi romb bloku vasitəsilə təsvir olunur.
Romb bloku bir girişli və bir neçə çıxışlı ola bilər. Bu blok daxilində yazılmış
məntiq ifadəsinin doğru olub-olmadığından asılı olaraq hesablama prosesi iki və
daha çox qollara ayrıla bilər. Başqa sözlə şərt bloku ondan sonra hesablama
prosesinin hansı istiqamətdə gedəcəyini aydınlaşdırır.
Maşında məsələni həll etmək üçün tərtib edilmiş alqoritm maşın alqoritmi və
ya proqram adlanır.
Alqoritmin proqramlaşdırma
dili
(proqram) vasitəsilə təsviri adi
təsvirdən onunla fərqlənir ki, burada maşının yerinə yetirəcəyi hər bir kiçik
əməliyyat müəyyən əmrlərlə verilməlidir, yəni proqramlaşdırma dili vasitəsilə
təsvir çox dəqiq olmalıdır, çünki kompüter ancaq ona verilmiş proqramdakı
əmrləri yerinə yetirir. Çox vaxt proqramı yazmazdan əvvəl məsələnin həll
alqoritmi blok-sxem şəklində (əyani olmaq üçün) təsvir edilir, sonra isə uyğun
proqram yazılır. Blok-sxemdən proqrama keçərkən hər bir blok bir neçə əmr
hə
yox
İ N F O R M A T İ K A
____________________________________________________________ 167
vasitəsilə dəqiq təsvir olunur. Ona görə də alqoritmin proqramlaşdırma dili
vasitəsilə təsviri zamanı əmrlərin sayı blok-sxemdəki blokların sayından çox olur.
Onu da qeyd etmək lazımdır ki, alqoritmin proqramlaşdırma dili vasitəsilə
təsviri əvvəlki təsvirdən çətindir. Əvvəlki təsvir vasitələrində səhvlər görünmür və
bilinmir, amma proqramlaşdırmada həmin səhvlər tez nəzərə çarpır və proqramçı
tərəfindən vaxtında düzəldilir.
Hesablama texnikasında müxtəlif strukturlu alqoritmlərdən istifadə edilir:
xətti alqoritmlər;
budaqlanan alqoritmlər;
dövri alqoritmlər;
Xətti alqoritmlər
çox sadə hesablama prosesini ifadə edən bir neçə ardıcıl
əməliyyatlardan ibarət olur və həmin əməliyyatlar yazıldığı ardıcıllıqla da yerinə
yetirilir. Belə alqoritmlərdə budaqlanma və dövri mərhələlər, başqa sözlə məntiq
mərhələsi olmur.
Ümumi halda xətti alqoritm aşağıdakı kimi təsvir edilir.
Budaqlanan alqoritmlərin
tərkibində bir və ya bir neçə məntiq mərhələsi
olur. Bu mərhələdə müəyyən (məsələn, hesablama nəticəsində alınan)
kəmiyyətlərin hər hansı bir şərti ödəyib-ödəmədiyi yoxlanılır və ona uyğun olaraq
sonrakı gedişin istiqaməti seçilir, yəni nəzərdə tutulan şərt ödənilirsə, bir
istiqamətə, ödənilmirsə başqa istiqamətə doğru hərəkət edilir.
Beləliklə, alqoritmdə budaqlanma baş verir.
a, b, c
P = (a + b + c) /2
S=
)
)(
)(
(
c
P
b
P
a
P
P
S
İ N F O R M A T İ K A
____________________________________________________________
168
Budaqlanan alqoritmə misal olaraq kvadrat tənliyin həll olunmasını
göstərmək olar. Tam kvadrat tənliyin həlli zamanı diskriminantın müsbət
olmasının yoxlanılması mərhələsi alqoritmdə budaqlanma yaradır.
Bunu aşağıdakı misalda aydınlaşdıraq.
Misal:
0
2
c
bx
ax
tam kvadrat tənliyin həll alqoritmini blok-sxem
şəklində təsvir etməli.