Алгоритм - это последовательность действий, которые необходимо выполнить, чтобы решить поставленную задачу.
Алгоритм имеет ряд важных свойств:
- Конечность. Алгоритм всегда должен заканчиваться после выполнения конечного числа шагов.
- Определенность. Каждый шаг алгоритма должен быть точно определен.
- Наличие входных данных. Алгоритм имеет некоторое число входных данных, задающихся до начала его работы или определяющихся динамически во время его выполнения.
- Наличие выходных данных. Алгоритм имеет одно или несколько выходных данных, имеющих определенную связь с входными данными.
- Эффективность. Алгоритм обычно считается эффективным, если его операторы достаточно просты для того, чтобы их можно было точно выполнить в течение конечного промежутка времени с помощью карандаша и бумаги.
- Массовость (универсальность). Алгоритм может быть применен к различному набору исходных данных.
Указанное определение эффективности подходит только для небольших программ, для крупных проектов существуют свои критерии эффективности.
К сожалению, во многих вузах преподаватели забывают о такой важной особенности, как Массовость. И требуют от студентов выполнения лабораторной с заведомо заданными данными, хотя можно было бы просто вводить их с клавиатуры.
Существуют различные формы записи алгоритмов, отличающиеся друг от друга
- простотой,
- наглядностью,
- компактностью изложения,
- степенью формализации,
- ориентацией на машинную реализацию.
Формы записи:
- словесная запись,
- псевдокод,
- схемы алгоритмов (блок-схемы),
- программа на языке программирования,
- решающие таблицы,
- структурограммы.
Основные элементы блок-схем
ГОСТ ЕСПД 19.701-90 / ИСО 5807-85
Правила оформления блок-схем:
- символ предназначен для графической идентификации функции, которую он отображает, независимо от текста внутри этого символа;
- символы в схеме должны быть расположены равномерно и быть, по возможности, одного размера;
- следует придерживаться разумной длины соединений между символами и минимального числа длинных линий;
- основное направление линий в схемах - сверху вниз и слева направо (может не отмечаться стрелками, в противном случае - применение стрелок обязательно);
- минимальное количество текста, необходимое для понимания функции данного символа следует помещать внутри символа.
Пример блок схемы
Составим алгоритм вычисления коэффициентов приведенного квадратного уравнения (по теореме Виета): x2+px+q=0, корни которого x1, x2 известны. Коэффициенты такого уравнения определяются по формулам:
p = -(x1+x2) ,
q = x1x2
В записи алгоритмов используется операция присваивания:
q:=x1x2,
читается: "q присвоить значение выражения", где q - переменная.
При этом выполняются все действия, необходимые для вычисления выражения из правой части оператора присваивания, а затем полученный результат сохраняется в качестве нового значения переменной q из левой части оператора присваивания.
Итоги
При решении задачи необходимо сначала составить алгоритм, то есть последовательность шагов, результатом которых будет выполнение поставленной задачи. Он может быть записан разными способами, наиболее популярным из которых является блок-схема.
Помните,что массовость - одно из важнейших свойств алгоритма.