Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АиПА / include / dalmat Описание.doc
Скачиваний:
8
Добавлен:
07.02.2016
Размер:
78.34 Кб
Скачать

1.2 Примеры использования классов и функций

dmatrixA;

Вызов конструктора без параметров. Создается объект типа dmatrixс именемA, который соответствует матрице с нулевым числом строк (пустая матрица). В дальнейшем переменнойAможно присвоить значение, соответствующее не пустой матрице.

dmatrixA(n);

Вызов конструктора

dmatrix::dmatrix(int n)

Создается квадратная матрица с размерами nn. Всем элементам матрицы присваиваются нулевые значения.

dmatrixA(n,m);

Вызов конструктора

dmatrix::dmatrix(int n, int m)

Создается прямоугольная матрица с размерами nm. Всем элементам матрицы присваиваются нулевые значения.

dmatrix A(M,n,m);

Вызов конструктора

dmatrix::dmatrix(double** M, int n, int m); Создается прямоугольная матрица с размерамиnmс инициализацией ее элементов с помощью внешнего двухмерного массиваM. Он должен представлять собой динамический массив с размерамиnm(тип параметраM-double** ).

dmatrixA(M,n);

Вызов конструктора

dmatrix::dmatrix(double** M, int n) Создается квадратная матрица с размерамиnnс инициализацией ее элементов с помощью внешнего двухмерного массиваM.

dmatrixA(B);

Вызов конструктора копирования

dmatrix::dmatrix(const dmatrix& B)

Создается объект типа dmatrixс именемA, который является копией оьъектаB.

A = B;

Здесь A- переменная (или именующее выражение) типаdmatrix,B- переменная или выражение такого же типа. Выполняется присваивание. ПеременнаяAможет содержать массив, размеры которого не совпадают с размерами массиваB. Можно записывать цепочки операций присваивания:

A = B = C;

A=w;

Здесь A- переменная типаdmatrix,w- переменная или выражение числового типа. ПеременнаяAдолжна содержать квадратную матрицу. МатрицаAприводится к диагональному виду, каждый из диагональных элементов получает значениеw.

A= ~B;

Здесь A,B- переменные типаdmatrix. ПеременнаяAполучает значение, которое соответствует транспонированной матрицеB.

w=A.det();

Здесь A- переменная типаdmatrix,w- переменная типаdouble. Переменнаяwполучает значение, равное определителю матрицыA.

A.rand(a,b);

Здесь A- переменная типаdmatrix,a,b- переменные типаdouble. МатрицаA заполняется случайными числами из интервала[a,b].

A>>f;

Здесь A- переменная типаdmatrix,f- указатель на файл типаFILE*. МатрицаAзаписывается в файл последовательного доступаf. Эту же операцию можно записать и так:

f<<A;

Матрица записывается в следующем формате:

n m

A[0][0] A[0][1] ... A[0][n-1]

A[1][0] A[1][1] ... A[1][n-1]

.........................................................

A[n-1][0] A[n-1][1] ... A[n-1][n-1]

A<<f;

Здесь A- переменная типаdmatrix,f- указатель на файл типаFILE*. МатрицаAчитается из файла последовательного доступаf. Эту же операцию можно записать и так:

f>>A;

w = amax(A);

Здесь A- переменная типаdmatrix,w- переменная типаdouble. Переменнаяwполучает значение, равное максимальному по модулю элементу матрицыA.

dvectorV;

Вызов конструктора без параметров. Создается объект типа dvectorс именемV, который соответствует одномерному массиву с нулевым числом элементов (пустой вектор). В дальнейшем переменнойVможно присвоить значение, соответствующее не пустому вектору.

dvector V(n);

Вызов конструктора

dvector::dvector(int n)

Создается одномерный массив размером n. Всем элементам присваиваются нулевые значения.

dvectorV(n,R);

Вызов конструктора

dvector(int n, double* R) Создается одномерный массив размеромn, все элементы которого инициализируются значениями из внешнего массиваR.

dvectorV(U);

Вызов конструктора копирования. Создается объект Vкак копия объектаWтипаdvector.

V=U;

Перегруженная операция присваивания, V- переменная (именующее выражение) типаdvector,U- выражение этого же типа. ВекторVможет иметь размер, не совпадающий с размером вектораU.

V[i]

ссылка на i-тый элемент вектораV.

V.length()

геометрическая длина вектора V.

V.rand(a,b);

Заполнение элементов вектора Vслучайными числами из интервала [a,b].

w=amax(V);

Переменная wтипаdoubleполучает значение, равное максимальному по модулю элементу вектораV.

V>>f;

Здесь V- переменная типаdvector,f- указатель на файл типаFILE*. ВекторVзаписывается в файл последовательного доступаf. Эту же операцию можно записать и так:

f<<V;

Вектор записывается в следующем формате:

n

V[0]

V[1]

.......

V[n-1]

V<<f;

Здесь V- переменная типаdvector,f- указатель на файл типаFILE*. ВекторVчитается из файла последовательного доступаf. Эту же операцию можно записать и так:

f >> V;

A + B

Здесь A,B имеют тип dmatrix или dvector. Поэлементное сложение матриц либо векторов.

A - B

Здесь A,B имеют тип dmatrix или dvector. Поэлементное вычитание матриц либо векторов.

A * B

Если A,B имеют тип dmatrix, выполняется операция матричного умножения. Если A,B имеют тип dvector, выполняется скалярное умножение векторов.

w * A

A * w

Умножение числа w на матрицу A.

A * V

Умножение матрицы A на вектор V.

w/A

Число w умножается на матрицу, обратную к A.

A/B

Матрица A умножается на матрицу, обратную к B.

gauss(A,B,X);

Решение системы линейных уравнений методом Гаусса. A - матрица системы, B - вектор правых частей, X - вектор-решение.

w = polin(V,x);

Вычисление полинома. Здесь V - массив коэффициентов полинома, представленный значением типа dvector, x - значение, для которого вычисляется полином, w - переменная, которая получает значение, равное значению полинома.

V = interpolinom(x,y);

Пременная V типа dvector получает значение, соответствующее набору коэффициентов интерполяционного полинома для таблицы зависимости y(x), которая представлена переменными x,y типа dvector.

V = polinappr(F,p);

Выполнить аппроксимацию данных, представленных объектом F типа ftable, полиномом порядка p. Элементам вектора V типа dvector присваиваются значения, равные коэффициентам аппроксимирующего полинома.

Соседние файлы в папке include