Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Inf&syst12 (2).doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
310.27 Кб
Скачать

2.2.2Комментарии

Если в строке в содержится #-символ, то следующие за ним в этой строке символы считаются комментариями. [Комментарии могут быть использованы для «отключения» части кода.]

Пример комментария. В следующем примере присвоение значения переменной b не выполняется.

> a:= 1; # b:=1; c:= 1;

a := 1

c := 1

2.2.3Функции op и nops.

Функция op(expression) выделяет операнды из выражения. Например, op(a*x^2+b*x+c); вернёт a*x^2, b*x, с. Последующее применение функции op к первому выделенному операнду op(a*x^2) даст a, x^2. Вызов op(x^2) вернёт x, 2. Кроме описанного выше, имеется несколько других вариантов вызова этой функции.

op(i, expression) — возвращает операнд с номером i (i — целое). [Если i=0, то возвращаемое значение зависит от типа данных: для индексированных имен — это имя без индекса; для функции — это идентификатор функции,...]

op(i..j, expression) — возвращает операнды expression в диапазоне от i до j.

op(list, expression) — возвращает «подоперанд» адресуемый списком list: первый элемент списка list указывает номер операнда expression, второй элемент — номер операнда в операнде выделенном на первом шаге, и т.д. Например, в рассматриваемом выше случае квадратного многочлена получим

op([1, 2, 1], a*x^2+b*x+c);

x

op([1, 2, 2], a*x^2+b*x+c);

2

т.е. в первом случае — основание степени, а во втором — показатель.

Функция nops(expression) возвращает число операндов. Например, вызов nops(a*x^2+b*x+c) вернёт три, а вызов nops(a*x^2) — два.

2.3Типы выражений

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

Пример использования whattype

> x:= 10: whattype(x);

integer

> x:= "Текст": whattype(x);

string

Функция whattype не позволяет тестировать подтипы. Более точное тестирование можно выполнить при помощи функции type(expression, type_expressin). Эта функция возвращает true, если выражение имеет заданный тип, и — false, в противном случае.

Примеры использования type

1. Натуральные числа принадлежат к типу integer

> x:= 1: type(x, integer);

true

> x:= -1: type(x, integer);

true

> x:= 0: type(x, integer);

true

2. Для более тонкой проверки можно воспользоваться подтипами: posint, negint, nonnegint, nonposint. Как и в предыдущем примере можно было бы присваивать значения переменной и затем тестировать присвоенное этой переменной значение. Для того чтобы привести другой вариант использования функции в данном примере тестируются типы непосредственного выражения.

> type (1, posint);

true

> type(-1, negint);

true

> type(0, posint);

false

> type(0, nonposint);

true

> type(0, nonnegint);

true

Перечень типов и подтипов приведен на странице справки type. [Напоминание: для того чтобы быстро открыть страницу справки: введите в рабочем листе type, переведите на него курсор и нажмите Ctrl + F1, либо наберите в Maple Input ?type; и нажмите Enter]. Условно типы делятся на: простые и структурированные.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]