9.6. структуры алгоритмов 9.6.1. алгоритмы линейной структуры Реализуют
линейные вычислительные процессы, в которых от-
дельные этапы вычислений должны выполняться последовательно
друг за другом.
Линейные алгоритмы содержат только команды обработки данных.
При исполнении алгоритма команды выполняются в порядке их за-
писи.
Линейный алгоритм вычисления коэффициентов приведенного
квадратного уравнения был рассмотрен ранее (см. рис. 9.2). Для по-
строения таких алгоритмов используется структура следования.
9.6.2. ветвления Вычислительные процессы, в которых в зависимости от тех или
иных условий должны выполняться различные этапы вычислений,
называются
разветвляющимися. Для построения алгоритмов, реа-
лизующих такие вычислительные процессы, необходимы специаль-
ные команды (управляющие структуры), позволяющие управлять
ходом выполнения алгоритма, а именно: осуществлять выбор одного
из нескольких возможных действий. Основной такой конструкцией
является структура простого ветвления, реализующая принятие дво-
ичного, или дихотомического, решения. Примером алгоритма с про-
стыми ветвлениями является рассмотренный ранее алгоритм выбора
максимального числа. Рассмотрим алгоритмы с более сложными
ветвлениями.
130 Пример 9.5. Вычислить значение функции, график которой изо-
бражен на рис. 9.11.
Область определения функции разбивается на 4 участка, на каждом
из которых значение функции определяется по различным формулам:
y x x x x x x =
-
≤
< ≤
-
< ≤
>
,
;
,
;
,
;
,
.
если
если
если
если
0
0
0
3
3
3
5
2
5
Для построения схемы алгоритма решения данной задачи исполь-
зуем вложенную конструкцию структур ветвления (рис. 9.12). Про-
Рис. 9.11. График функции
Рис. 9.12. Алгоритм вычисления значения функции по заданному графику
131 веряем заданные условия последовательно. Первым проверим условие
x ≤ 0, и если оно выполняется, то вычислим y := -x. Если первое
условие не выполняется, то, следовательно,
x > 0, и надо проверить
следующее условие
x ≤ 3.