Мафҳуми алгоритм ва блок-схема
Дар компютерҳо яке аз масъалаҳои асосӣ сохтани барнома мебошад. Барои сохтани барнома ҳалли ягон масъала аввал бояд алгоритми он тартиб дода шавад. Баъд аз он, ки алгоритми ҳалли масъала тартиб дода шуд онро дар ягон забони барномасозӣ навиштан лозим аст, ки ин барнома ном дорад.
Бо мафҳуми алгоритм одамон дар ҳар қадам дучор меоянд, аммо бо он он қадар эътибор намедиҳанд. Таърифи алгоритм чунин аст:
Пайдарпайии охирноки амалиётҳое, ки аз руи ягон қоида ё қонуни муайян сохта шуда аз шарти масъала ба ҳалли он меорад алгоритм номида мешавад. Яъне ҳар он коре, ки мо дар зиндагӣ мекунем аз рӯи алгоритме иҷро карда мешавад. Масалан, пӯхтани хӯрок, сохтани ягон асбоб, сохтани хона аз рӯи нақша, пӯшидани фарши хона ва ғайраҳо.
Алгоритм аз калимаи лотини гирифта шуда маънояш Ал-хоразмӣ мебошад. Ал-хоразмӣ номи математики машҳури асри 9 осиёи миёна мебошад.
Алгоритмҳо се намуд мешавад: алгоритми хаттӣ, шартӣ ва даврӣ.
Алгоритмҳое, ки дар онҳо амалҳо пай дар пай вобаста ба тартиби ҷойгиршавиашон иҷро мешаванд алгоритмҳои хаттӣ номида мешавад.
Алгоритмҳое, ки дар онҳо ақалан якто шарт иштирок мекунад алгоритмҳои шатрӣ номида мешавад.
Алгоритмҳое, ки дар онҳо гурӯҳи амалҳои якчанд маротиба такроршаванда иштирок мекунад алгоритмҳои даврӣ номида мешавад.
Блок-схема гуфта, тасвири графики алгоритмро дар намуди фигураҳои геометрӣ меноманд. Барои сохтани блок-схема чунин фигураҳои геометрӣ истифода бурда мешаванд:
-ибтидо, интињо;
-гузоштани шарт;
-дохилкунї, хориљкунї;
-давр;
-њисобкунї;
-Нишон додани равиши иљроиши амалњо;
Мисол: Функсия Аргумент Қиматҳо
Барои функсияи додашуда аввал алгорит ва пас аз рӯи алгоритм блок-схемаашро тартиб медиҳем.
- Ибтидо
- Дохилкунӣ a,b,c,x,
- Ҳисобкунӣ y=a*exp(-x)*cos(b*x)+c
- Хориҷкунӣ Y
- Интиҳо
Y
y=a*exp(-x)*cos(b*x)+c
a,b,c,x,
Ибтидо
Интињо
Функсия Шарт Аргумент Киматхо
- Ибтидо
- Дохилкуни a,b,x
- Агар x<2 онгоҳ y=exp(x^2)*sin(b*x)
- Agar x=2 ongoh y=cos(a*x)
- Agar x>2 ongoh y=exp((x+1))
- Horijkuni Y
- Intiho
Ибтидо
a,b,c
x<2
ха
не
Y=exp(x^2)*sin(b*x)
x=2
Y=cos(a*x)
Y=exp((x+1))
ха
не
Y
Интињо