Программирование разветвляющихся алгоритмов в безмодульном программировании.



 

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

Для проверки заданных условий в 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; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!