Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

R - (дополнительное) целое число




Лабораторная работа № 4.

Комбинаторика.

Цель работы: Решение комбинаторных задач с использованием программы
Maple.
В программе Maple имеется специальный пакет функций – combinat, которыйпозволяет решать комбинаторные задачи.
Пакет функций вызывается следующим образом:
> with(combinat):

Рассмотрим некоторые функции пакета combinat и напомним применение оператора -- $.

$ - оператор для формирования последовательности выражений

Синтаксис
expr $ i = m
.. n
expr $ n -- сокращенная форма: expr $ i = 1.. n (когдаexpr
не содержит i)
$ m.. n -- сокращенная форма: i $ i = m..n

Параметры
expr – выражение
i – имя
m,n - выражения

Описание
Вы можете использовать оператор $, чтобы сформировать последовательность выражений (перечисленных через запятую выражений -- expr, вычисленных, подстановкой вместо i в expr значения m, m+1,..., n).
Если m> n тогда ПУСТАЯ последовательность выражения возвращена.
Обратите внимание: Это рекомендует (и часто необходимо), что и 'expr' и 'i' взяты в апострофы, самое общее использование - 'expr' $ 'i' = м.. n;
Примеры

> $ 2..5;

> i^2 $i=2/3..8/3;

> a[i]$ i=1..4;

> x$4;

> '$1..5'$3;


> EX:='x+k' $ 'k'=2..3;

> x:=2:
> EX;

 

 

Функция combinat [choose] - возвращает неупорядоченные выборки списка.

Синтаксис обращения к функции:

Choose(n)

Choose(n, m)

Параметры:

N - список или множество объектов или целое число

M - (дополнительное) целое число

Описание:

Если n -- список/множество, тогда choose возвращает список/множество из элементов которые являются всевозможными неупорядоченными выборками из n по m без повторений. Если n - неотрицательное целое число, то это интерпретируется так, как список первых n целых чисел.

Если m задается, то только выборки размера m возвращены; иначе, выборки всех размеров возвращены, включая пустую комбинацию. Обратите внимание, что дубликаты в списке n приняты как различные элементы.

Команда with(combinat,choose), позволяет использование сокращенной формы этой команды.

 

Примеры:

> with(combinat):

Чтобы получить список сочетаний без повторений из n=3 элементов по m=2:

> choose([1,2,3],2);

Или тоже самое

> choose(3,2);

Чтобы получить список сочетаний с повторениями из n=3 элементов по m=2,необходимо в списке n каждый элемент повторить m раз:

> choose([1,1,2,2,3,3],2);

Или тоже самое

 

> choose([1$2,2$2,3$2],2);

или тоже самое:

> choose(['$1..3' $ 2],2);

Функция numbcomb(n,m) -- возвращает число неупорядоченных выборок из n по m.

Например:

> numbcomb(3,2);

> numbcomb([1$2,2$2,3$2],2;

или тоже самое:

> numbcomb(['$1..3' $ 2],2);

 

Функция binomial (n, r) — возвращает биноминальные коэффициенты, причем, если n и r — целые числа, удовлетворяющие условию 0 <= r<= n, то функция возвращает C(n.r)=n!/(r!(n-r)!)
Пример:
> binomial(4, 2);

Функция partition(n,m) — возвращает список всех возможных сумм, дающих n.

Синтактис обращения к функции:

Partition(n)

Partition(n,m)

Параметры:

N - целое положительное число

M - (дополнительное) целое положительное число

Описание:

Если m не задано, то partition(n) возвращает список списков, элементами которых являются всевозможные числа сумма которых равна n. Если m задано, то элементы (числа) списков не превосходят m.

Пример:

>

> partition(4);

> partition(4,2);

Функция numbpart(n,m) -- возвращает число элементов partition(n,m), т.е. numbpart(n,m)= nops(partition(n,m)).

Пример:

> numbpart(4);

> numbpart(4,2);

 

Функция combinat[permute] - возвращает упорядоченные выборки списка без повторений.

Синтаксис:

Permute(n)

permute (n, r)

Параметры:

N - список/множество объектов или целое число

r - (дополнительное) целое число

Описание:

Если n - список/множество, то permute возвращает список/множество из элементов которые являются всевозможными упорядоченными выборками из n по m без повторений. Если n - неотрицательное целое число, то это интерпретируется как список первых n целых чисел. Если r не определено, то r=n.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...