Цель работы -приобретение навыков по составлению программ с разветвляющейся структурой и их отладке в интегрированной среде Borland C ++ 5.
Организация ветвлений в программах
Программы с разветвляющейся структурой являются реализацией одноименных алгоритмов. Последние из-за их сложности целесообразно представлять в виде блок-схем, для построения которых применяют условные графические обозначения согласно ГОСТ 19.701-90 и ГОСТ 19.003-80. Наиболее часто используемые блоки приведены в табл.1.
Условные графические обозначения основных блоков схем алгоритмов
Для организации ветвлений в программах применяются два оператора: переключатель (switch) и условный оператор (if).
1. Условный оператор имеет два вида:
if (условие) оператор1 else оператор2
б) сокращенная форма
if (условие) оператор1,
где оператор1, оператор2 — любые операторы, включая условные и составные;
условие – в общем случае логическое выражение.
Примечание: Если оператор1 и оператор2 представляют собой короткие выражения, то вместо условного оператора можно использовать условную операцию ?:, в частности, для выше рассмотренного примера имеем:
КАК РАБОТАЮТ ГРАФЫ | СТРУКТУРЫ ДАННЫХ
Блок-схемы условного оператора для обеих форм приведены на рис. 1.
Рис. 1. Блок-схемы условного оператора: а) – полная форма, б) – сокращенная форма
2. Оператор выбора (переключатель) имеет следующий вид:
switch (выражение)
case константаN: операторN break;
default: оператор // эта строка может отсутствовать
>,
где выражение — целочисленная переменная или соотношение;
константа№ – метка в виде константы или константного выражения;
default – метка на оператор, который выполняется в том случае, если выражение не совпадает ни с одной константной меткой;
break – оператор выхода из переключателя.
Блок – схема оператора выбора представлена на рис. 2.
Рис. 2. Блок-схема оператора выбора
switch (rez)
Источник: studopedia.org
Основные элементы блок-схемы. Типы блок-схем.
Описание алгоритма с помощью блок схем осуществляется рисованием последовательности геометрических фигур, каждая из которых подразумевает выполнение определенного действия алгоритма. Порядок выполнения действий указывается стрелками. Написание алгоритмов с помощью блок-схем регламентируется ГОСТом. Внешний вид основных блоков, применяемых при написании блок схем, приведен на рисунке.
Представление алгоритма программы в виде блок-схемы имеет два недостатка:
· предполагает слишком низкий уровень детализации, что часто скрывает суть сложных алгоритмов
· и позволяет использовать неструктурные способы передачи управления (goto), причем часто на схеме алгоритма они выглядят проще, чем эквивалентные структурные.
Кроме схем, для описания алгоритмов можно использовать псевдокоды, Flow-формы и диаграммы Насси-Шнейдермана. Все перечисленные способы с одной стороны базируются на тех же основных структурах, а с другой стороны, допускают разные уровни детализации.
Базовые алгоритмические структуры
Каждый символ Flow-формы соответствует управляющей структуре и изображается в виде прямоугольника. Для демонстрации вложенности структур символ Flow-формы вписывается в соответствующую область прямоугольника любого другого символа. Символы Flow-форм, соответствующие основным и дополнительным управляющим конструкциям, приведены на рисунке А1.
Если |
то |
иначе |
Выбор |
Код 1 |
иначе |
Код 2 |
Пока |
Для i=1, n, h |
До |
а) |
б) |
в) |
г) |
д) |
е) |
Рисунок А1 — Условные обозначения Flow-форм для основных конструкций:
а — следование; б — ветвление; в — выбор; г — цикл-пока; д — цикл-до; е — счетный цикл
да |
нет |
Код |
иначе |
Пока |
До |
а) |
б) |
в) |
г) |
д) |
Рисунок А2 — Условные обозначения диаграмм Насси-Шнейдермана для основных конструкций:
а — следование; б — ветвление; в — выбор; г — цикл-пока; д — цикл-до
Основное отличие диаграмм Насси-Шнейдермана от Flow-форм заключается в том, что область обозначения условий и вариантов ветвления изображают в виде треугольников (рисунок А2). Такое обозначение обеспечивает большую наглядность представления алгоритма.
Общим недостатком Flow-форм и диаграмм Насси-Шнейдермана является сложность построения изображений символов, что усложняет практическое применение этих нотаций для описания больших алгоритмов.
В отличие от блок-схем псевдокоды не ограничивают степень детализации операций, но, не являясь графическими, хуже отображают их вложенность.
Описать неструктурный алгоритм с помощью псевдокодов, Flow-форм и диаграмм Насси-Шнейдермана невозможно, т. к. для неструктурной передачи управления в них отсутствуют условные обозначения. Их использование изначально ориентирует проектировщика только на структурные способы передачи управления, а потому требует тщательного анализа алгоритма.
В зависимости от последовательности выполнения действий в алгоритме выделяют алгоритмы:
· и циклической структуры.
В алгоритмах линейной структуры действия выполняются последовательно одно за другим.
В алгоритмах разветвленной структуры в зависимости от выполнения или невыполнения какого-либо условия производятся различные последовательности действий. Каждая такая последовательность действий называется ветвью алгоритма.
В алгоритмах циклической структуры в зависимости от выполнения или невыполнения какого-либо условия выполняется повторяющаяся последовательность действий, называющаяся телом цикла. Вложенным называется цикл, находящийся внутри тела другого цикла. Различают циклы с предусловием и постусловием:
Итерационным называется цикл, число повторений которого не задается, а определяется в ходе выполнения цикла. В этом случае одно повторение цикла называется итерацией.
Итак: При всем многообразии алгоритмов решения задач в них можно выделить три основных вида вычислительных процессов:
· линейный,
· разветвленный
· и циклический,
для реализации которых в программах используют соответствующие базовые управляющие конструкции:
· следование,
· ветвление,
· цикл-пока.
Помимо базовых, процедурные языки программирования высокого уровня используют еще три конструкции (структуры), которые легко реализуются через базовые:
· выбор,
· цикл-до,
· цикл с заданным числом повторений.
Перечисленные шесть конструкций были положены в основу структурного программирования. Слово «структурное» в названии подчеркивает тот факт, что при программировании использованы только перечисленные конструкции. Отсюда и понятие «программирование без go to». Программы, написанные с использованием только структурных операторов передачи управления, называют структурными, чтобы подчеркнуть их отличие от программ, при реализации которых использовались низкоуровневые способы передачи управления.
Разработанный алгоритм реализуется в виде программных кодов (программы) на одном из языков программирования.
Дата добавления: 2016-05-31 ; просмотров: 27979 ; ЗАКАЗАТЬ НАПИСАНИЕ РАБОТЫ
Источник: poznayka.org
Презентация на тему Формы записи алгоритмов. Фигуры (блоки) блок-схемы
улицы:
Остановись на тротуаре.
Посмотри налево.
Если транспорта нет, то иди до середины улицы и остановись, иначе выполняй п. 2.
Посмотри направо.
Если нет транспорта, то иди до противоположного тротуара, иначе выполняй п. 4.
Слайд 5Графическая запись алгоритма
Слайд 6Блок-схема
Для обозначения шагов алгоритма используются геометрические фигуры:
Слайд 7Переход улицы
Слайд 8Алгоритм, записанный на языке, понятном исполнителю, называется
программой.
Алгоритм разрабатывается для решения некоторого класса задач.
При этом:
выделяются объекты, устанавливаются их свойства, отношения между ними, возможные действия с объектами;
определяются исходные данные и результат;
определяется точная последовательность действий исполнителя для перехода от исходных данных к результату;
действия описываются командами, понятными исполнителю.
Слайд 9Самое главное
Алгоритмы, исполнителем которых является человек, удобно
записывать в словесной форме, в табличной форме,
в виде блок-схем.
Для обозначения шагов в блок-схеме используются фигуры (овал, параллелограмм, ромб, прямоугольник и другие).
Алгоритм, записанный на языке, понятном исполнителю, называется программой.
Источник: thepresentation.ru