logo
Информатика_ЗФ / 2013_Информатика УМО_легпром

Алгоритмы ветвящейся структуры

В отличие от линейных алгоритмов, в которых команды выполняются последовательно одна за другой, в разветвляющиеся алгоритмы входит условие, в зависимости от выполнения или невыполнения которого выполняется та или иная последовательность операций, групп операций или базовая управляющая структура.Каждая такая последовательность действий называетсяветвьюалгоритма.

Таким образом, алгоритм ветвящейся структуры содержит только структуры «Следование» и «Ветвление» (рис. 9.2, 9.3 и 9.4).

Структура «Ветвление» описывает следующий процесс: если B – ИСТИНА (TRUE) (не равно нулю), то выполняется структураS1; еслиB– ЛОЖЬ (FALSE) – структураS2. При этом происходит разветвление алгоритма (рис. 9.3).

Следует иметь в виду, что, хотя на схеме алгоритма должны быть показаны все возможные направления вычислений в зависимости от выполнения определённого условия (или условий), при однократном прохождении программы процесс реализуется только по одной ветви, а остальные исключаются. Любая ветвь, по которой осуществляются вычисления, должна приводить к завершению вычислительного процесса.

Пример.Рассмотрим пример ветвящегося вычислительного процесса. Определить и вывести на экран монитора сведения о положении точки (Х,Y) в указанной области (рис. 9.10). Координаты точки вводятся с клавиатуры по запросу пользователя. Примечание: прямая, уравнение которойх= 2 принадлежит области В.

Рис. 9.27. Рисунок, иллюстрирующий условие примера

Визуальное представление алгоритма в виде блок-схемы представлено на рисунке 9.11.

Рис. 9.28. Визуальное представление простого ветвящегося алгоритма решения задачи в виде блок-схемы

Если сравнить схему на рисунке 9.11 со схемами на рисунках 9.2 и 9.3, то видно, что данный алгоритм содержит базовые управляющие структуры – «Следование» и «Ветвление». При x≥ 2 блоки выполняются в следующей последовательности: 1, 2, 3, 4, 5, 7. Следовательно, еслиx≥ 2, в блоке 5 на мониторе будет выведено «точкаX,Yв области В».Если x < 2, последовательность выполнения блоковследующая: 1, 2, 3, 4, 6, 7, т.е. на экран в блоке 6 будет выведено «точкаX,Yв области А». Данный результат соответствует условию задачи.

В тестовом задании 9.2 представлен фрагмент данного ветвящегося алгоритма, записанный в словесно-формульном виде.

Тестовое задание 9.8

Определите значение переменной z после выполнения фрагмента алгоритма, представленного на рисунке 9.12:

Рис. 9.29. Рисунок к заданию 9.8

Решение.

Блок 1. Присваиваем значения х= 7 иy= 5.

Блок 2. Выполняем проверку x>y, результат – «истина», следовательно, после блока 2 выполняем блок 3.

Блок 3. Вычисляем значение переменной z=x+y = 7+5 = 12.

Блок 5. Выводим значение переменной zна экран монитора.