Графическая форма записи алгоритма
Алгоритм записывается в виде схемы, состоящей из блоков (геометрических фигур) с размещенными в них действиями. Блоки соединяются стрелочками и показывают структуру всего алгоритма. Алгоритм в виде блок-схемы начинается блоком "начало" и заканчивается блоком "конец".
Основные блоки приведены на рис. 9.4.
Рис. 9. 4. Изображение основных блоков
При составлении блок-схемы алгоритма сначала выделяютисходные данные (все переменные величины после знака равенства и в условии) и результат(величины которые необходимо найти). Если в задании подразумеваются, но не указываются имена величин, то они обозначаются самостоятельно. При отсутствии исходных данных блок ввода не пишется. В один блок можно поместить одно действие. Блочные символы соединяются линиями переходов, определяющими очередность выполнения действий. По умолчанию не требуется рисование стрелок при проведении линий слева направо и сверху вниз. Во всех остальных случаях стрелки необходимы.
Пример:Алгоритм вычисления значения выражения K=3b+6а приведен на рис. 9.5.
Существуют еще формы записи, которые можно отнести к графическим формам представления алгоритмов. Одной из таких форм является построение структурограмм (диаграмм Несси – Шнайдермана, названных так по фамилиям авторов).
Действия в структурограмме располагаются друг под другом. Это позволяет наглядно отслеживать обработку данных в алгоритмах. Все структуры имеют прямоугольную форму. Заполнение их сходно с аналогичными блоками в блок-схемах, но имеются и отличия.
Рис. 9. 5. Текстовая и блок схема форма записи алгоритма вычисления выражения K=3b+6а
Пример:Рассмотрим блок-схему и структурограмму алгоритма, приведенного на рис. 9.6.
Рис. 9. 6. Блок схемное и структурограммное представление алгоритма.
Результаты сравнения этих двух форм записи впишите в табл. 9.2.
Сравнение представления блок-схемы и структурограммы
Таблица 9. 2
№ | Название блока | Обозначение в | |
блок-схемах | структурограммах | ||
Виды алгоритмов
Выделяют следующие базовые виды алгоритмов: линейный, разветвляющийся, циклический (табл. 9.3). Характерной особенностью базовых структур является наличие в них одного входа и одного выхода. При определении вида алгоритма пользуются ключевыми словами.
Базовые алгоритмические структуры
Таблица 9. 3
Вид алгоритма | Ключевые слова | Структура |
Алгоритм, в котором есть структура следование называется линейным. Следование - это расположение действий друг за другом. | Ключевых слов нет. | |
Алгоритм, в котором есть структура ветвление называется разветвляющимся. Ветвление- это выбор действия в зависимости от выполнения какого-нибудь условия. | если...то...иначе..; при ...(в значении если...). | |
Алгоритм, в котором есть структура цикл называется циклическим. Цикл-это неоднократное повторение каких-либо действий. | от...до...; ... раз; пока ...; если... (в значении пока...). |
Алгоритм, который содержит несколько структур одновременно, называется комбинированным. На рис. 9.7 представлен пример комбинированного алгоритма.
Рис. 9. 7. Блок – схема комбинированного алгоритма
9.3.1.1. Базовая структура "следование"
Образуется последовательностью действий, следующих одно за другим. Структура изображена в табл. 9.3.
9.3.1.2. Базовая структура "ветвление"
Ветвление в алгоритмах позволяет выполнить действие (или серию действий) в зависимости от выполнения или невыполнения какого-нибудь условия.
Условие представляет собой строку, содержащую операцию сравнения с использованием знаков <>=.
Например: x>5; s1<-15.5; d$="да"; j<>4 (не равно); Z3>=3 (больше или равно); t<=0(меньше или равно).
Если условие соблюдается, то выполняются действия, расположенные в ветви под названием "Да". В случае несоблюдения условия будут выполнены действия, расположенные в ветви "Нет". Каждый из путей ведет к общему выходу, так что работа алгоритма будет продолжаться независимо от того, какой путь будет выбран.
Структура ветвление в разветвляющихся алгоритмах может быть представлена в двух формах: полной или неполной (рис. 9.8).
Рис. 9. 8. Блок-схема алгоритма полного или неполного ветвления
Неполная отличается от полной тем, что в одной из ветвей действия отсутствуют. В таком алгоритме в соответствии с условием либо будут выполнены действия, имеющиеся в ветви, либо начнут сразу выполняться действия, расположенные после ветвления.
На алгоритмическом языке структура ветвление записывается следующим образом (табл. 9.4).
Представление структуры "ветвление" в алгоритмическом языке
Таблица 9. 4
В полной форме | В неполной (сокращенной) форме |
если условие то действие 1 иначе действие 2 все | если условие то действие все |
В зависимости от условия в строке если выполняется только одно из действий (или группа действий), расположенных либо в строке то (условие соблюдено), либо в строке иначе (условие не соблюдено). | В этом случае выполнится действие (или группа действий), расположенное в строке то только при соблюдении условия. Если же условие не соблюдается, то исполнитель перейдет к выполнению действий, следующих за служебным словом все. |
Служебное слово если обозначает начало ветвления, а все - конец ветвления.
Кроме двух базовых вариантов структуры "ветвление" на практике применяются еще один вариант разветвления "выбор" (рис. 9.9).
Рис. 9. 9. Блок-схема алгоритмической структуры "выбор"
Примеры структуры "ветвление" приведены в табл. 9.5.
Фрагметы блок-схем разветвляющихся алгоритмов
Таблица 9. 5
Алгоритмический язык | Язык блок-схем |
если x > 0 то y := sin(x) все | |
если a > b> 0 то a:= a * 2; b:= 1 иначе b:= 2 * b все | |
выбор при n = 1: y := sin(x) при n = 2: y := cos(x) при n = 3: y := 0 все |
9.3.1.3. Базовая структура "цикл"
Структура "цикл" используется при составлении алгоритмов, в которых необходимо многократно повторять какие-либо действия.
Цикл с параметром (цикл "для")
Для организации цикла с параметром вводится величина (счетчик), которая меняет свое значение от начального до конечногос определенным шагом. Шаг равен разности между следующим и предыдущим значением величины (рис. 9.10).
Рис. 9. 10. Структура цикла с параметром (цикла "для")
Если при выполнении алгоритма должен получиться ряд ответов, то блок вывода помещается внутри цикла.
Пример.
Цикл от Х=10 до 13 шаг 1. Х будет принимать значения равные:10,11,12,13.
Цикл от R=20 до 14 шаг -2. R будет принимать значения равные: 20,18,16,14.
Все действия, размещенные внутри цикла, называются телом цикла. Тело цикла выполняется столько раз, сколько разных значений примет параметр в заданных пределах.
На алгоритмическом языке начало и конец цикла обозначают служебными словами нци кц. Оформление цикла с параметром делается следующим образом (рис. 9.11):
Рис. 9. 11. Пример организации цикла с параметром на алгоритмическом языке
Цикл с логическим условием (цикл "до" )
Для организации цикла так же можно использовать блок логического условия.
Тело цикла размещается до проверки условия его окончания. Цикл выполнится хотя бы один раз. Блок схема и запись на алгоритмическом языке цикла "до" показаны на рис. 9.12.
Рис. 9. 12. Пример организации цикла "до"
Цикл с логическим условием (цикл "пока")
Тело цикла размещается после проверки условия его окончания. Цикл может не выполниться ни одного раза. Блок схема и запись на алгоритмическом языке цикла "пока" показаны на рис. 9.13. Данный вариант циклической структуры более универсален, так как существует значительное количество задач, где требуется проверка предусловия.
Рис. 9. 13. Пример организации цикла "пока"
Примеры циклических структур приведены в табл. 9.6.
Фрагметы блок-схем циклических алгоритмов
Таблица 9. 6
Алгоритмический язык | Язык блок-схем |
нц пока i <= 5 S := S+A[i] i := i+1 кц | |
нц для i от 1 до 5 X[i] := i*i*i Y[i] := X[i]/2 кц |
В экономических вычислениях наиболее часто встречаются алгоритмы определения сумм и произведений. Рассмотрим их более подробно.
Дата добавления: 2015-11-26; просмотров: 8381;