Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
32
Добавлен:
05.06.2015
Размер:
31.28 Кб
Скачать

10) Для квадратных матриц существует единичная матрица (аналог единицы для операции умножения чисел) такая, что умножение любой матрицы на неё не влияет на результат, а именно:

A*E=E*A =A.

>> a

a =

4 2

1 2

>> e=eye(2)

e =

1 0

0 1

>> a*e

ans =

4 2

1 2

>> e*a

ans =

4 2

1 2

2.Написать функцию для вычисления определителя матрицы до 3-го порядка через подстановки.

{function f=fun(a,n)

k=0;b=0;

for i = 1:1:n-1

for j = 1:1:n-1

if a(i,j)>a(i,j+1)

t=a(i,j);

a(i,j)=a(i,j-1);

a(i,j-1)=t;

k=k+1;

end

if i==j

b=b+a(i,j);

end

end

end

d=(-1)^k*b}

function d=fun(a)

n= size(a);

if n==1

d=a(1,1);

elseif n==2

d=a(1,1)*a(2,2)-a(2,1)*a(1,2);

elseif n==3

d=a(1,1)*a(2,2)*a(3,3)+a(1,2)*a(2,3)*a(3,1)+...

a(2,1)*a(1,3)*a(3,2)-a(1,3)*a(2,2)*a(3,1)-...

a(1,1)*a(2,3)*a(3,2)-a(2,1)*a(1,2)*a(3,3);

else

disp('Введите матрицу размерности не меньше 3')

end

3. Проверить на примерах 9 свойств определителя.

Свойства определителя

1) При добавлении к любой строке (столбцу) линейной комбинации других строк

(столбцов) определитель не изменится.

2) Если две строки (столбца) матрицы совпадают, то её определитель равен нулю.

a=[1,1,1;1,1,1;2,3,2]

a =

1 1 1

1 1 1

2 3 2

>> det(a)

ans =

0

3) Если две (или несколько) строки (столбца) матрицы линейно зависимы, то её

определитель равен нулю.

4) Если переставить две строки (столбца) матрицы, то её определитель умножается на

(-1).

>> a=[1,1,1;2,3,2;1,2,3]

a =

1 1 1

2 3 2

1 2 3

>> det(a)

ans =

2

>> a=[1,1,1;1,2,3;2,3,2]

a =

1 1 1

1 2 3

2 3 2

>> det(a)

ans =

-2

5) Общий множитель элементов какого-либо ряда определителя можно вынести за

знак определителя.

>> a=[2 4 6;4 6 8;6 8 6]

a =

2 4 6

4 6 8

6 8 6

>> isequal(2*det([1,4,6;2,6,8;3,8,6]),det(a))

ans =

1

6) Если хотя бы одна строка (столбец) матрицы нулевая, то определитель равен нулю.

>> a=[0,0,0;1,1,1;2,2,2]

a =

0 0 0

1 1 1

2 2 2

>> det(a)

ans =

0

7) Сумма произведений всех элементов любой строки на их алгебраические дополнения

равна определителю.

8) Сумма произведений всех элементов любого ряда на алгебраические дополнения

соответствующих элементов параллельного ряда равна нулю.

9) Определитель произведения квадратных матриц одинакового порядка равен

произведению их определителей

4. Реализовать рекурсивное вычисление факториала.

function n=fact(k)

if k==0

n=1;

else

n=k*fact(k-1);

end

5. Реализовать рекурсивное вычисление определителя матрицы произвольного порядка через разложение по строке (столбцу).

function f=opr(A)

n=length(A);

if n==2

f=A(1,1)*A(2,2)-A(1,2)*A(2,1);

else

for j=1:1:n

if j==1

f=A(1,j)*opr(A(j+1:n,j+1:n));

elseif j==n

f=A(1,j)*opr(A(j-1:n,j-1:n));

else

f=A(1,j)*opr([A(j+1:n,j+1:n);A(j-1:n,j-1:n)]);

end

end

end

Из файла Labsystems.

Соседние файлы в папке Линейная Алгебра