Алгоритм- это точное предписание, определяющее вычислительный процесс, ведущий от изменяемых начальных данных к решению поставленной задачи.
Основными изобразительными средствами алгоритмов являются следующие способы их записи:
- словесный;
- формульно-словесный;
- блок-схемный;
- псевдокод;
- структурные диаграммы;
- языки программирования.
Рассмотрим пример блок-схемы той же задачи, для которой приведен словесный алгоритм.
Словесный– содержание этапов вычислений задается на естественном языке в произвольной форме с требуемой детализацией.
Рассмотрим пример словесной записи алгоритма. Пусть задан массив чисел. Требуется проверить, все ли числа принадлежат заданному
интервалу. Интервал задается границами А и В.
п.1Берем первое число. На п.2.
п.2Сравниваем: выбранное число принадлежит интервалу;
если да, то на п.3, если нет – на п.6.
п.3Все элементы массива просмотрены? Если да, то на п.5, если нет – то на п.4.
п.4Выбираем следующий элемент. На п.2.
п.5Печать сообщения: все элементы принадлежат интервалу. На п.7.
п.6Печать сообщения: не все элементы принадлежат интервалу. На п.7.
п.7Конец.
При этом способе отсутствует наглядность вычислительного процесса, т.к. нет достаточной формализации.
Формульно-словесный– задание инструкций с использованием математических символов и выражений в сочетании со словесными пояснениями.
Например, требуется написать алгоритм вычисления площади треугольника по трем сторонам.
п.1– вычислить полупериметр треугольника
p=(a+b+c)/2. К п.2.
п.2– вычислить
К п.3.
п.3– вывести S , как искомый результат и прекратить вычисления.
При использовании этого способа может быть достигнута любая степень детализации, более наглядно, но не строго формально.
Блок-схемный– это графическое изображение логической структуры алгоритма, в котором каждый этап процесса переработки данных представляется в виде геометрических фигур (блоков), имеющих определенную конфигурацию в зависимости от характера выполняемых операций.
Такое представление алгоритма достаточно удобно и наглядно показывает последовательность выполнения операторов программы.
Используя данные обозначения можно составить блок-схемы основных операторов программирования на алгоритмическом языке Паскаль.
case
if
for
repeat
while
В соответствии с используемыми в программе операторами различают следующие типы алгоритмов: линейный, ветвящийся, циклический, комбинированный.
Пример блок-схемы комбинированного алгоритма для расчета суммы положительных S1 и отрицательных S2 чисел из N случайных чисел от -100 до 100.