Алгоритм – точное предписание, определяющее процесс перехода от исходных данных к результату. Предписание считается алгоритмом, если оно обладает тремя свойствами:
1. Дискретность алгоритма. Свойство алгоритма, означающее, что процесс решения задачи, определяемый алгоритмом, расчленен на отдельные элементарные действия (шаги).
2. Определенность алгоритма. Это свойство означает, что каждая команда алгоритма на каждом шаге должна быть понятна исполнителю (пользователю).
3. Результативность алгоритма. Свойство алгоритма, состоящее в том, что он всегда приводит к результату.
4. Массовость алгоритма. Это свойство заключается в том, что каждый алгоритм, разработанный для решения некоторой задачи, должен быть применим для решения задач этого типа при всех допустимых значениях исходных данных.
Рассмотрим простейший алгоритм — алгоритм заварки чая:
1. Подготовить исходные величины — чай, воду, чайник, стакан, ложку;
2. Налить в чайник воду;
3. Довести воду до кипения и снять с огня;
4. Всыпать в заварочный чайник чай;
5. Залить заварку вскипяченной водой;
6. Чай готов. Процесс прекратить.
Составляя алгоритм, необходимо разбить процесс решения задачи на такие операции, которые в состоянии выполнить ЭВМ.
Далее, составленный алгоритм решения задачи следует перевести на язык, понятный ЭВМ, аналогично тому, как алгоритм, записанный на русском языке, нужно перевести на английский, если исполнителем является англичанин.
Существует значительное число подобных языков — Бейсик, Фортран, Паскаль и др. Они называются языками программирования. Запись алгоритма на таком языке называется программой, а процесс перевода алгоритма на указанный язык — программированием.
В общем, процесс решения задач на ЭВМ предполагает выполнение следующих основных этапов:
1. формулировка задачи;
2. выбор метода решения задачи;
3. составление алгоритма;
4. составление программы;
5. решение задачи на ЭВМ по заданной программе.
Рассмотренная трактовка понятия «алгоритм» показывает, что алгоритм — это не что-то отвлеченное, абстрактное и присущее лишь процессу использования ЭВМ, а неотъемлемая часть повседневной жизни. В частности, любые инструкции, любые распоряжения руководства должны быть сформулированы в виде алгоритма, чтобы они были однозначно поняты подчиненными. Причем правила формирования распоряжений-алгоритмов, инструкций-алгоритмов те же, что и для алгоритмов решения задач на ЭВМ.
При составлении алгоритма процесс решения задачи разбивают на этапы, ориентируясь на исполнителя, на операции, известные ему. Так, в примере алгоритма заварки чая предполагалось, что исполнитель знаком с операцией «вскипятить воду». Если это не так, то п. 3 алгоритма следует разбить на три более мелких этапа, считая, что они ему известны:
З.1. Зажечь газ;
3.2. Поставить чайник на огонь;
3.3. Дождаться бурного выделения пара и снять чайник с огня.