§4.1.1. Алгоритм и его свойства
§4.1.2. Алгоритмические структуры «ветвление» и «цикл»
§4.1.3. Подпрограммы. Рекурсивные алгоритмы
§4.1.4. Приёмы отладки программ. Трассировка программ
Алгоритмы могут описывать процессы преобразования самых разных объектов. Широкое распространение получили вычислительные алгоритмы, которые описывают преобразование числовых данных. Само слово «алгоритм» происходит от algorithmi — латинской формы написания имени выдающегося математика IX века аль-Хорезми, который сформулировал правила выполнения арифметических операций.
Алгоритм обладает следующими свойствами.
Результативность. Выполнение алгоритма должно завершиться за конечное число шагов.
Дискретность. Алгоритм должен обеспечивать преобразование объекта из начального состояния в конечное состояние за определённое число дискретных шагов.
Массовость. Один и тот же алгоритм может применяться к большому количеству однотипных объектов.
Детерминированность (определённость). Исполнитель должен выполнять команды алгоритма в строго определённой последовательности. Каждое действие алгоритма должно быть строго определено, не допускать разночтений. Алгоритм должен выдавать один и тот же результат для разных исходных данных.
Понятность. Алгоритм должен содержать только команды, входящие в систему команд исполнителя и записанные на понятном для исполнителя языке.
Алгоритм — это строго детерминированная последовательность действий, описывающая процесс преобразования объекта из начального состояния в конечное (исходных данных в результат), записанная с помощью понятных исполнителю команд.
Существуют разные способы записи алгоритмов: словесный (на естественных языках), графический (блок-схемы), описание на языках программирования.
Блок-схемы алгоритмов. Блок-схема представляет собой графическую форму записи алгоритмов. Она позволяет сделать алгоритм более наглядным и выделить в нём основные алгоритмические структуры (линейная, ветвление и цикл). Если исполнителем алгоритма является человек, то он может по блок-схеме легко проследить выполнение алгоритма, так как элементы блок-схем соединены стрелками, указывающими шаги выполнения алгоритма.
Элементы алгоритма изображаются на блок-схеме с помощью различных геометрических фигур, внутри которых записывается программный код (табл. 4.1).
Таблица 4.1
Элемент блок-схемы | Назначение элемента блок-схемы |
Прямоугольник с закруглёнными углами применяется для обозначения начала или конца алгоритма | |
Параллелограмм предназначен для описания ввода или вывода данных, имеет один вход вверху и один выход внизу | |
Прямоугольник применяется для описания линейной последовательности команд, имеет один вход вверху и один выход внизу | |
Ромб служит для обозначения условий в алгоритмических структурах «ветвление» и «выбор», имеет один вход верху и два выхода (налево, если условие истинно, и направо, если условие ложно). Применяется также для составления алгоритмической структуры «цикл» | |
Шестиугольник используется в алгоритмической конструкции «цикл со счётчиком» | |
Прямоугольник в прямоугольнике применяется для вызова отдельно описанного алгоритма (подпрограммы) | |
Прямоугольник со срезанным углом применяется для объявления переменных или ввода комментариев |
Какие из нижеперечисленных правил являются алгоритмами:
• орфографические правила;
• правила выполнения арифметических операций;
• правила техники безопасности;
• правила перевода чисел из одной системы счисления в другую? Ответ обоснуйте.
Следующая страница §4.1.2. Алгоритмические структуры «ветвление» и «цикл»