Maple 9.5/10 в математике, физике и образовании
Шрифт:
Понятие приоритета облегчает однозначную интерпретацию математических выражений. К примеру, в выражении 2+3*5 вначале будет вычислено 3*5, а затем к результату прибавится 2. В итоге будет вычислено значение 17. А в выражении (2+3)*5 вначале будет вычислено выражение в скобках (2+3), затем оно будет умножено на 5, так что результат будет 25. Таким образом скобки позволяют менять приоритет операций. Степень вложения скобок в современных системах компьютерной математики не ограничена. Однако иногда применение лишних скобок может повлиять на выбор правил вычисления выражений, например при вычислении степеней.
3.1.2. Виды операторов
Формально операторы представлены своими идентификаторами в виде специальных математических знаков, слов и иных
• binary — бинарные операторы (двумя операндами);
• unary — унарные операторы (с одним операндом);
• nullary — нуль-арные операторы (без операнда — это одна, две и три пары кавычек);
• precedence — операторы старшинства (включая логические операторы);
• functional — функциональные операторы.
Для просмотра операторов и их свойств можно использовать следующие команды вида:
где вид — название вида оператора, указанное выше. Будет выведена страница справки по операторам заданного вида. А для изучения примеров применения операторов нужно задать и исполнить команду
Команда
позволяет ознакомиться с функций define. С ее помощью можно определять новые операторы.
3.1.3. Применение бинарных (инфиксных) операторов
Бинарные операторы, именуемые также инфиксными, используются с двумя операндами, обычно размещаемыми по обе стороны от оператора. В ядро Maple включено около трех десятков бинарных операторов. Основные из них перечислены в таблице 3.1. Чуть позже мы рассмотрим и другие бинарные операторы. Примеры вычисления выражений с бинарными операторами (файл ор):
Таблица 3.1. Бинарные операторы
Обозначение | Оператор | Обозначение | Оператор |
---|---|---|---|
+ | Сложение | @ | Оператор композиции |
– | Вычитание | @@ | Повторение композиции |
* | Умножение | , | Разделитель выражений |
/ | Деление | := | Присваивание |
** или ^ | Возведение в степень | .. | Задание интервала |
mod | Остаток от деления | , | Разделитель выражений |
$ | Оператор последовательности | &* | Некоммутативное умножение |
. | Разделительная точка | &<string> | Нейтральный
|
|| | Конкатенация (объединение) |
Оператор композиции @@ может использоваться для создания и вычисления сложных функций, содержащих цепные дроби:
А вот еще один пример применения этого оператора для составления цепного радикала и вычисления ряда таких цепочек в цикле:
3.1.4. Работа с множествами
Множества, относящиеся к первичным понятиям, не являются точно определенными математическими объектами. Можно рассматривать, например, различные множества чисел, множества людей или деревьев и т.д. Будем считать, что они определяют группу неповторяющихся объектов. Для работы с множествами определены следующие бинарные операторы:
• union — включает первый операнд (множество) во второй;
• intersect — создает множество, содержащее общие для операндов элементы;
• minus — исключает из первого операнда элементы второго операнда.
В любом случае в результирующем множестве устраняются повторяющиеся элементы. Примеры вычисления выражений с этими операторами приведены ниже (файл sets):
Напоминаем, что эти операторы заданы ключевыми словами. Несмотря на фундаментальность понятия множества, множества применяются в конкретных расчетах довольно редко.
3.1.5. Новый оператор in в множествах
Начиная с Maple 8 для удобства работы с множествами был добавлен новый оператор in. Он может использоваться в виде (файл sets):