Видове алгоритми и форми на тяхното представяне

Има три вида алгоритми —линейни,разклонени,циклични. Видът на алгоритъма се определя от характера на задачата, която се решава в съответствие с неговите команди. Използват се три форми на представяне на алгоритмите:таблица,вербална,графична, но не и трите форми са възможни за нито един от алгоритмите. Формата на представяне на алгоритъм зависи от неговия тип.

Линеен тип алгоритъм.Алгоритъм, в който инструкциите се изпълняват в реда на тяхната естествена последователност една след друга, независимо от каквито и да е условия, е алгоритъм от линеен тип. Това ще бъде например алгоритъм за изчисляване на най-простите, безалтернативни формули, които нямат ограничения върху стойностите на променливите, включени в тях.

Проблем.Изчислете площта на кръг.

Резултат:S, площта на кръга.

Нека покажем, че алгоритъмът за решаване на такъв проблем е линеен по вид и допуска всяка от трите форми на представяне.

Табличната форма на представяне на алгоритми се използва само за линейни изчислителни алгоритми. Нейният пример е таблица 1.

Нека докажем, че тази таблица представлява алгоритъм. За да направим това, ще се уверим, че системата от последователни действия, посочени в тази таблица, удовлетворява петте изисквания за алгоритми. Наистина, командите в това представяне на алгоритъма са имената на колоните. Процесът на решаване е разделен на отделни стъпки, което се забелязва от имената на колоните, които определят дискретната структура на този алгоритъм. Той отговаря на изискването за разбираемост: ние, като негови изпълнители, сме прочели посочените действия и сме ги разбрали. Значението на всички действия е недвусмислено, преходът към изпълнението на всяко следващо действие се определя (дефинира) от последователни колони. Броят на колоните е краен, което означава, че ще получим резултатаза краен брой стъпки. Спазено е и изискването за масовост. Таблицата позволява изчисление за различни стойности на първоначалните данни, ако резултатът от изчислението за всяка опция е записан в различните й редове.

Вербално представяне(за всички типове алгоритми):

Искане на стойност на променливаR

Отпечатайте стойността на променливатаS

Обяснение към алгоритъма

За да реши много проблеми, алгоритъмът трябва да получи входни данни и задължително да произведе изходни данни - резултатът от решаването на проблема. С други думи, алгоритъмът трябва да комуникира с "външния свят". За получаване на данни от външно устройство има специална команда -команда за въвеждане. Ако външно устройство се разбира като клавиатура, тогава, достигайки това място, изпълнителят ще изчака въвеждането на данни. Данните се записват впроменливи. Под променлива може да се разбира конкретна клетка в паметта на компютъра. Всяка променлива в алгоритъм има име. Нашият алгоритъм има една входна команда:

Искане на стойност на променливаR

За изчисляване на стойността на някакъв израз се използва командата за присвояване:

Принципът на командата за присвояване: на променливата, чието име е вляво от знака за присвояване ":=", се присвоява стойността на израза вдясно от знака за присвояване. В този случай "старата" стойност на променливата се изтрива.

Командата за извежданеви позволява да извеждате данни към външно устройство - файл на диск, дисплей, принтер. В този алгоритъм има една изходна команда:

Отпечатайте стойността на променливатаS

Графичната форма на представяне(приложима за алгоритми от всякакъв тип) се основава на замяната на типични алгоритмични команди с определени геометрични форми - блокове.

Таблица 2.Основни елементи на блок-схемата

Този блок съдържа команда за присвояване, например:

Входният блок е показан като успоредник, съдържащ въпросителен знак и името на променливата, чиято стойност трябва да се получи.

Входният блок е изобразен като успоредник, в който изходните параметри са изброени разделени със запетаи. Константи, променливи и изрази могат да действат като параметри (стойностите на променливите и изразите се показват). Константите на низовете се поставят между апострофите.

При изпълнение на следната команда, изпълнителят на алгоритъма ще поиска стойността на променливатаX.

Ако стойността на променливатаsumе равна на 5, то в резултат на изпълнение на командата:

ще покаже:Сумата от две числа е 5

Алгоритъмът за решаване на нашия проблем в графична форма на представяне е показан на фиг. 1.

Разклонен тип алгоритъм.В случай, че условието на задачата предвижда възможност за избор по време на нейното решение в зависимост от изпълнението на определени условия, алгоритъмът за решение се оказва разклонен (разклонен). Той позволява две форми на представяне: словесно и графично.

Цикличен тип алгоритъм.Алгоритъм, компилиран с многократни повторения на едни и същи действия (цикли), се нарича цикличен. Такъв алгоритъм решава много проблеми. Формата за представяне на такъв алгоритъм може да бъде избрана както устно, така и графично.

На практика най-често се срещат алгоритми от вид смесен тип, в които могат да се разграничат секции (блокове), които имат структура от линеен, разклонен или цикличен тип. Освен това отбелязваме, че алгоритъм с всякаква степен на сложност може да бъде конструиран с помощта на блокове от основния основен набор, които имат линеен(последователна), разклонена (разклонена) или циклична структура. Всяка от тези структури има само един вход и само един изход, което ви позволява да свържете произволен брой елементи от основни структури във всяка последователност по време на разработването на алгоритъма.

И така, методът на алгоритмизация е широко използван, тъй като е свързан както с човек, така и с робот, автомат, по-специално компютър. Този метод служи като основа за автоматизиране на дейностите на човек изпълнител. В допълнение, алгоритмизацията е общ метод на кибернетиката, който разглежда процесите на управление в различни системи като изпълнение на определени алгоритми.