Иллюстрированный самоучитель по Maple 6/7

Условные выражения

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

if <Условие сравнения? then <Элементы>
|elif "Условие сравнения> then <Элементы>|
|else <Элементы>|
fi:

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

  • if <Условие> then <Элементы 1> fi – если Условие выполняется, то исполняются Элементы 1, иначе ничего не выполняется;
  • if <Условие> then <Элененты 1> else <Элененты 2> fi – если Условие выполняется, то исполняются Элементы 1, иначе исполняются Элементы 2.

В задании условий используются любые логические конструкции со знаками сравнения (<, <=, >, >=, =, <>) и логические операторы and, or и not, конструкции с которыми возвращают логические значения true и false.

Рассмотрим следующий простой пример:

> х:-5:
> if x<0 then print('Negative') fi;
Negative
> x:-l: > if x<0 then print('Negative') fi;

В этом примере анализируется значение х. Если оно отрицательно, то с помощью функции вывода print на экран выводится сообщение "Negative". А вот если х неотрицательно, то не выводится никакого сообщения. В другом примере если х неотрицательно, то выводится сообщение "Positive":

> х.-5:
> if x<0 then print('Negative') else print('Positive') fi;
Negative > x:-l:
> if x<0 then printСNegative") else printC'Positive') fi;
Positive

Приведем еще один пример, показывающий особую форму задания конструкции if-then-else-fi:

> х: = -5:
> 'if (x<0, printCNegative').print('Positive'));
Negative
> х: = 1:
> *1f (х<0 .print("Negative'),printrPositive'));
Positive

В этой конструкции вида 'if '(Условие. Выражение1, Выражение2) если Условие выполнятся, то будет исполнено Выражение1, в противном случае будет исполнено Выражение2.

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

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.