![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Списком в Maple называется упорядоченная последовательность выражений, заключенная в квадратные скобки.
Система сохраняет порядок, в котором задан список. Повторение элементов не устраняется.
Пример:
> [1,2,3,1]; [{c,a,t},{d,o,g}];
[1, 2, 3, 1]
[{c, a, t}, {d, o, g}]
Для списков определены следующие операции и соответствующие им функции.
1) Извлечение из списка L элементов по заданному правилу (условию) l, оператор вида
select ( l, L ) или select( l, L, b1,..., bn ).
Здесь b1,..., bn – необязательные параметры, содержащие дополнительные данные для условия. Пример типичного использования этой команды – выделение части выражения, содержащей или не содержащей некоторую переменную.
Например, выберем из списка [8, 2, 95, Pi, sin(9)] элементы, значения которых больше трех. Зададим правило и список, а затем воспользуемся оператором select.
> L:=[8,2,95,Pi, sin (9)]; l:=x->is(x>3);
L:= [8, 2, 95, Pi, sin(9)]
l:= x -> is(3 < x)
> select (l,L);
[8, 95, Pi]
2) Удаление из списка L элементов, удовлетворяющих условию l; оператор вида
remove( l, L ) или remove( l, L, b1,..., bn ).
Параметры здесь имеют тот же смысл, что и для команды select.
Пример:
> remove (l,L);
[2, sin(9)]
3) Объединение двух списков без указания правила объединения. Эту операцию можно осуществить, выделив с помощью оператора op последовательности выражений, входящих в список:
> [op (L1), op (L2) ];
[1, 2, 3, 1, 4, 5]
4) Объединение двух списков по задаваемому правилу. Такая операция осуществляется функцией вида
z ip( f,u,v ) или z ip( f,u,v,d ).
Здесь f – бинарная функция, задающая правило объединения, u,v – списки или одномерные массивы, d – значение. Эта функция, для создания нового списка (вектора) r, применяет бинарную функцию f к компонентам двух списков (векторов) u и v по следующим правилам. Если m - длина u, и n - длина v затем, то длина списка (вектора) r - минимум из m и n, а его элементы r[i]=f(u[i], v[i]), i=1..min(m, n). Значение необязательного четвертого параметра d, используется как значение по умолчанию для f, когда длина одного из параметров u или v меньше чем другого. В этом случае длина r равна максимуму длин u и v. Элементы r[i]=f(u[i],v[i]) для i=1..min(m,n) и r[i]=f(t[i],d) для i=1+min(m,n)..max(m,n), где t – один из параметров u или v, имеющий большую длину.
Примеры:
> X:=[seq(x,x=-10..10)]: Y:=[seq(x^2,x=-10..10)]:
> l:=(x,y)->[x,y]:
> F:=zip(l,X,Y);
F:= [[-10, 100], [-9, 81], [-8, 64], [-7, 49], [-6, 36], [-5, 25],
[-4, 16], [-3, 9], [-2, 4], [-1, 1], [0, 0], [1, 1], [2, 4],
[3, 9], [4, 16], [5, 25], [6, 36], [7, 49], [8, 64], [9, 81],
[10, 100]]
Дата публикования: 2014-11-29; Прочитано: 252 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!