Алгоритм - понятное и точное предписание совершить определенную последовательность действий, направленных на достижение указанной цели или решение поставленной задачи. Термин "алгоритм" происходит от имени узбекского ученого Аль-Хорезми, который в своем труде «Арифметический трактат» изложил правила арифметических действий над числами в позиционной десятичной системе счисления. Эти правила и назвали алгоритмами. Таким образом, изучаемые в школе правила сложения, вычитания, умножения, деления, возведения в степень и т. д. - все это алгоритмы. Многие правила и инструкции представляют собой подробнейшие указания, годные во всевозможных ситуациях.
1. Дискретность - алгоритм должен быть разбит на шаги (отдельные законченные действия). 2. Определенность - у исполнителя не должно возникать двусмысленностей в понимании шагов алгоритма (исполнитель не должен принимать самостоятельные решения). 3. Результативность (конечность) - алгоритм должен приводить к конечному результату за конечное число шагов. 4. Понятность - точность и подробность в написании алгоритма. 5. Массовость – применение одного алгоритма к решению многих однотипных задач.
Алгоритм можно записать на естественном языке с помощью слов и предложений, на алгоритмическом (формальном) языке, на языке блок-схем (графическое представление). Различают четыре основных типа частных алгоритмов: 1. линейный алгоритм; 2. алгоритм с ветвлением; 3. циклический алгоритм; 4. вспомогательный алгоритм.
Линейный алгоритм – описание действий, которые выполняются однократно в заданном порядке. Исполнитель выполняет действия последовательно, одно за другим в том порядке в котором они следуют.
Алгоритм с ветвлением - алгоритм, содержащий хотя бы одно условие, в результате проверки которого ЭВМ обеспечивает переход на один из двух возможных шагов.
Циклический алгоритм - это алгоритм, предусматривающий повторения одного и того же действия над новыми исходными данными. Необходимо заметить, что циклический алгоритм легко реализуется посредством двух ранее рассмотренных типов алгоритмов. Циклические алгоритмы бывают двух типов: Циклы со счетчиком, в которых какие-то действия выполняются определенное число раз; Циклы с условием, в которых тело цикла выполняется, в зависимости от какого-либо условия. Различают циклы с предусловием и постусловием. да нет
Вспомогательный, или подчиненный, алгоритм - это алгоритм, ранее разработанный и целиком используемый при алгоритмизации конкретной задачи. Алгоритм Число «1919» начало сделай ЕДИНИЦА прыжок сделай ДЕВЯТЬ прыжок сделай ЕДИНИЦА прыжок сделай ДЕВЯТЬ конец Где ЕДИНИЦА и ДЕВЯТЬ вспомогательные алгоритмы.
Блок-схема - графическое изображение алгоритма в виде схемы связанных между собой с помощью стрелок (линий перехода) блоков - графических символов, каждый из которых соответствует одному шагу алгоритма. Внутри блока приведено описание совершаемых в нем действий. Линейный Циклический С ветвлением
Словесный способ - это, по существу, обычный язык, но с тщательным отбором слов и фраз, не допускающих лишних слов, двусмысленностей и повторений. Дополняется язык обычными математическими обозначениями и некоторыми специальными соглашениями. Алгоритм описывается в виде последовательности шагов. На каждом шаге определяется состав выполняемых действий и направление дальнейших вычислений. Графический способ - это способ представления алгоритма с помощью общепринятых графических фигур, каждая из которых описывает один или несколько шагов алгоритма. Внутри блока записывается описание команд или условий. Для указания последовательности выполнения блоков используют линии связи (линии соединения ). Существуют определенные правила описания алгоритмов в виде блок-схем, которые используются строго определенные типы блоков: начало или конец описания алгоритмов; ввод исходных данных или вывод результатов; блок арифметических или других действий; блок проверки условий.
Таким образом, точный набор инструкций, описывающих последовательность действий некоторого исполнителя для достижения результата, решения некоторой задачи.