Программирование разветвляющихся алгоритмов в безмодульном программировании.
Для реализации разветвляющегося алгоритма необходимо проверить выполнение заданных условий и выполнить нужную ветвь вычислений, в зависимости от результатов проверки.
Для проверки заданных условий в Mathcad используется: отношения, логические операции и логические выражения.
отношением называется конструкция вида:
арифметическое выражение 1 операция отношения арифметическое выражение 2
операции отношения – первые шесть из операций, взятых из палитры логический.
Выражение отношений может быть истинно (или 1) или ложно (0)
С помощью логических операций можно конструировать логические выражения любой сложности.
Названия операций (слева направо): (отрицание, не, not), (логическое умножение, и, and), (логическое сложение, или, or), (исключающее или, xor).
Компонентами логических операций являются логические выражения, т. е. всё, что может быть истинно или ложно.
Смысл операций ясен из:
Операция not однокомпонентная: not 0 = 1 not 1= 0
Остальные операции двухкомпонентные:
Операция: or 0 or 0 = 0 Операция and 0 and 0 = 0 Операция xor 0 xor 0 = 0
0 or 1 = 1 0 and 1 = 0 1 xor 0 = 1
1 or 0 = 1 1 and 0 = 0 0 xor 1 = 1
1 or 1 = 1 1 and 1 = 1 1 xor 1 = 0
Логическим выражением называется конструкция, состоящая из выражений отношений, логических операций и круглых скобок. Логическое выражение принимает только одно из двух значений: 1 или 0, вычисляется слева направо с учетом приоритета входящих в выражение операций. Наивысший приоритет имеют конструкции, заключённые в круглые скобки, затем and, or и xor – имеют одинаковый приоритет.
|
|
Для выбора нужной ветви разветвляющегося алгоритма используется конструкция, названная условной функцией if, которая имеет вид:
if (логическое выражение, выр. 1, выр. 2)
где имя функции if вводится с клавиатуры.
Если логическое выражение равно 1, то выполняется выр.1, в противном случае – выр. 2
При программировании разветвляющихся алгоритмов с тремя и более вычислительных ветвей на месте выр. 1 и выр. 2 вновь может использоваться функция if
Пример найти у если при различных значениях х
Другой пример z=
В Mathcad имеются несколько встроенных функций, которые возвращают результат, зависящий от знака или величины аргумента и которые могут быть полезны при программировании разветвляющихся алгоритмов:
ceil (x) – наименьшее целое, большее или равное x;
trunc (x) – целая часть вещественного числа x;
floor (x) – наибольшее целое, меньшее или равное x;
round (x, n) – округленное значение вещественного x с точностью до n знаков после десятичной точки;
Ф(x) – функция Хевисайда – равна 0 при x< 0 и 1 в противном случае;
|
|
sign (x) – функция знака (равна 0 если x = 0; -1, если x< 0 и 1, если x> 0);
signum (x) – возвращает 1, если x = 0 и остальных случаях.
Дата добавления: 2015-12-17; просмотров: 21; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!