Программирование разветвляющихся алгоритмов
Характерной чертой разветвляющихся алгоритмов является наличие в них нескольких возможных ветвей вычислений. Выбор конкретной ветви зависит от выполнения (или не выполнения) заданных условий на значения переменных алгоритма.
Пример 3.2.1. Значение переменной y зависит от значений переменной x
и определяется выражением:
(3.2.1)
Выбор одной из двух ветвей вычислений определяется текущим x. На рис. 3.2.1 представлена блок-схема этого алгоритма, хорошо подтверждающая название алгоритма – «разветвляющийся».¨
Рис. 3.2.1. Блок-схема разветвляющегося алгоритма (3.2.1)
Возникает вопрос: какие конструкции необходимы для реализации разветвляющегося алгоритма? Анализ алгоритма (3.2.1) и «программистская интуиция» подсказывают необходимость использования:
- конструкций, проверяющих выполнение заданных условий (чаще гораздо более сложных, чем условие алгоритма (3.2.1));
- конструкций, выбирающих нужную ветвь вычислений в зависимости от результатов проверки заданных условий.
Для проверки заданных условий в MathCAD используется: выражение отношений, логические операции и логические выражения.
Выражением отношений (или просто отношением) называется конструкция вида:
<выр.1> <операция отношения> <выр.2>,
где <выр.1>, <выр.2> – произвольные арифметические выражения, <операция отношения> – любая из следующих операций:
(здесь вертикальные чёрточки являются разделительным символом при перечислении).Смысл этих операций понятен и не нуждается в пояснении. Для ввода знаков операций отношений можно использовать палитру Логический (приведённую на рис. 3.2.2) или использовать клавиши, обозначения которых приведены в табл. 3.2.1.
Рис. 3.2.2. Палитра инструментов Логический
Внимание!
Не следует путать знак операции сравнения = с похожим знаком вывода значений переменных. Знак операции = имеет больший размер и более жирное начертание.
Таблица 3.2.1
Знаки операции |
Клавиши |
< |
[<] |
|
[Ctrl] + [9] |
> |
[>] |
|
[Ctrl] + [0] |
= |
[Ctrl] + [=] |
|
[Ctrl] + [3] |
Выражение отношений принимает одно из двух значений: 1 – если заданное отношение выполняется, 0 – в противном случае. Значение 1 можно интерпретировать как значение истина, а 0 – как ложь.
Задание 3.2.1. Пусть значение целой переменной x =3. Определить значение следующих выражений отношений:
. ?
Для проверки более сложных условий используются четыре логические операции, обозначения которых приведены в табл. 3.2.2.