Формы записей алгоритмов
Выделяются три основных способа записей алгоритмов.
- Вербальный (от лат. verbalis – словесный) – алгоритм описывается на естественном языке
- Символьный – алгоритм описывается с помощью набора символов
- Графический – алгоритм описывается с помощью набора графических изображений
Вербальный способ записи алгоритмов представляет собой описание последовательных этапов обработки данных. Алгоритм задается в произвольном изложении на естественном языке.
Словесный способ не имеет широкого распространения, так как такие описания:
- строго не формализуемы;
- страдают многословностью записей;
- допускают неоднозначность толкования отдельных предписаний.
Общепринятыми способами записей алгоритмов является графическая запись с помощью блок-схем и символьная запись с помощью какого-либо языка программирования.
Блок-схема
- Блок-схема — это распространенный тип схем, описывающий алгоритмы или процессы, изображая шаги в виде блоков различной формы, соединенных между собой стрелками.
- Блок-схемы наглядны, но для записи сложных алгоритмов неудобны.
- Правила выполнения схем определяются следующими документами:
ГОСТ 19.701-90. Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения.
ГОСТ 19.002-80. Схемы алгоритмов и программ. Правила выполнения.
ГОСТ 19.003-80. Схемы алгоритмов и программ. Обозначения условные графические.
Данные документы регулируют способы построения схем и внешний вид их элементов.
Основные элементы блок-схем.
- Терминатор (пуск-останов)
Начало или конец алгоритма, вход или выход в подпрограмме.
- Процесс
Выполнение одной или нескольких операций, обработка данных любого вида (изменение значения данных, формы представления, расположения). Внутри фигуры записывают непосредственно сами операции.
- Условный (логический) блок. Решение
Выбор направления выполнения алгоритма в зависимости от некоторого условия.
- Данные (ввод-вывод)
Данные. Ввод-вывод. Преобразование данных в форму, пригодную для обработки (ввод) или отображения результатов обработки (вывод). Данный символ не определяет носителя данных.
- Предопределенный процесс
Символ отображает выполнение процесса, состоящего из одной или нескольких операций, который определен в другом месте программы (в подпрограмме, модуле)
- Модификация. Подготовка
Модификация команды или группы команд с целью воздействия на некоторую последующую функцию. Начало цикла (с параметром) – изменяется счетчик (параметр) цикла.
Базовые алгоритмические структуры
- Следование
- Ветвление
- Ветвление неполное
- Ветвление полное
- Выбор
- Выбор с действием по умолчанию
- Цикл с предусловием
- Цикл с постусловием
- Цикл с параметром
Примеры описания алгоритмов с помощью блок-схем
- Следование
- Составьте алгоритм для вычисления периметра прямоугольника.
- Ветвление
- Ветвление неполное
- Ветвление полное
- Выбор
- Цикл с предусловием
- Цикл с параметром
- Даны две переменные: A, B. Перераспределить значения данных переменных так, чтобы в A оказалось меньшее из значений, а в B — большее. Вывести новые значения переменных A и B.
- Заданы числа a и b. Определить, эти числа одного или разных знаков?
- Дано целое число K. Вывести строку-описание оценки, соответствующей числу K (1 — «плохо», 2 — «неудовлетворительно», 3 — «удовлетворительно», 4 — «хорошо», 5 — «отлично»). Если K не лежит в диапазоне 1–5, то вывести строку «ошибка»
- Даны положительные числа A и B (A > B). На отрезке длины A размещено максимально возможное количество отрезков длины B (без наложений). Не используя операции умножения и деления, найти длину незанятой части отрезка A
- Даны целые числа K и N (N > 0). Вывести N раз число K
Домашнее задание
-
Составить блок-схемы описывающие алгоритмы решения следующих задач
- Даны два числа a и b. Найти их среднее арифметическое: (a + b)/2.
- Даны два числа. Вывести вначале большее, а затем меньшее из них.
- Даны два целых числа A и B (A < B). Вывести в порядке возрастания все целые числа, расположенные между A и B (цикл с параметром).
- Даны целые положительные числа N и K. Используя только операции сложения и вычитания, найти частное от деления нацело N на K, а также остаток от этого деления (цикл с предусловием).
Источники
- Интернет-версия издания: Шауцукова Л.З. Информатика 10-11. — М.:Просвещение, 2000 г. URL: http://book.kbsu.ru/theory/
- Ресурсы Википедии
Методичка (4 стр.): Блок-схемы, базовые алгоритмические структуры, свойства алгоритма, примеры, задания
Презентация к уроку: Алгоритм, Блок-схемы