Курсова робота
з дисципліни основи програмування
та алгоритмічні мови
Тема. Обчислення визначника методом Гауса
Зміст
1)Вступ
2)Теоретична частина
3)Текст програми на мові Turbo Pascal
4)Результат виконання програми
5)Висновок
6)Список використаної літератури
Вступ.
Сучасні комп’ютерні технології дозволяють автоматизувати математичні задачі.
Завдяки цьому їх використання стало простішим і доступнішим.В цій курсовій
роботі я надаю приклад такої задачі.
Теоретичні відомості :
Матриці та їх властивості.
Визначники другого та третього порядків.Нехай є множина чотирьох чисел, розміщених у вигляді квадратної таблиці :
A= ;
Такі таблиці називаються матрицями.В цьому випадку маємо квадратну матрицю вона другого порядку.
Числа, з яких складаються матриці, називаються її елементам утворюють два горизонтальних і два вертикальних рядки, які називаються
відповідно рядкам та стовпцям матриці.Перший індекс кожного елемента вказує
на номер рядка, в якому цей елемент розміщений, другий - на номер стовпця.
Елемент a11,a22 утворюють головну діагональ матриці, елемент а12,a21 – побічну.
Визначником другого порядку, що відповідає матриці , називається число, яке визначається рівністю
detA= ;
(в останньому ланцюзі рівностей перші два вирази є позначенням зазначеного
визначника).Розглянемо квадратну матрицю третього порядку:
A= ;
Складається вона з дев’яти елементів, розміщених у трьох рядках і трьох стовпцях.
Сутність індексів у елементах матриці така сама, як і в елементах квадратної матриці другого порядку.Елементи a11,a22,a33 – утворюють головну діагональ матриці а13, a22,a31 – побічну.
Визначником третього порядку, що відповідає матриці, називається число, яке визначається рівністю:
detA==а11а22а33+а12а23а31+а13а21а32-а13а22а31-а12а21а33-а11а23а32.
Звертаємо увагу на те, що перші три доданки у правій частині становлять добутокелементів визначника, взятих по три.
Щоб дістати наступні три доданки у правій частині, потрібно перемножити
елементи визначника по три , після чого знак кожного із знайдених добутків замінитина протилежний.
Це правило утворення доданків, що входять у праву частину, називається правилом трикутника. Воно дає змогу без напруження пам’яті обчислити визначник третього порядку з чисельно заданими елементами, не записуючи
формули.
Властивості визначників другого та третього порядків.
Ці властивості будемо доводити, користуючись означеннями визначника третього порядку.
1.Значення визначника не змінюється, якщо всі його рядки замінити його стовпцями, причому кожний рядок замінити стовпцем із тим самим номером,тобто
= ;
Для доведення цієї властивості досить застосувати правило трикутника до лівої та правої частини рівності і порівняти одержані результати.
Властивість 1 означає рівноправність рядків і стовпців визначника; тому всі наступні властивості визначника, властиві його рядка та стовпцям, достатньо сформулювати і довести або тільки для рядків, або тільки для стовпців.
2.Перестановка двох рядків визначника рівносильна множенню його на -1.
3.Якщо визначник має два однакових рядки, то він дорівнює нулю.
Справді, якщо однакові рядки поміняти місцями, то, з одного боку, значення визначника не зміниться (властивість 1), а з іншого – знак йог о значення зміниться на протилежний (властивість).Отже, для значення det визначника маємо det=-det, тобто 2det=0, звідки det=0.
4.Якщо всі елементи якого-небуть рядка визначника містять спільний множник,
то його можна винести за знак визначника.
Для доведення цієї властивості досить зазначити, що визначник подається у вигляді суми, кожний член якої містить один елемент із кожного рядка.
5.Якщо всі елементи деякого рядка визначника дорівнюють нулю, то й сам визначник дорівнює нулю.
Ця властивість є частинним випадком попередньої.
6.Якщо відповідні елементи двох рядків визначника пропорційні, то визначник
дорівнює нулю.
Справді, винісши спільний множник пропорційності за знак визначника, дістанемо визначник з двома однаковими рядками, який за властивістю 3 дорівнює нулю.
7.Якщо кожний елемент деякого рядка визначника є сумою двох доданків, то
визначник може бути зображений у вигляді суми двох визначників, у яких один
у згаданому рядку має перші з заданих доданків, а інший – другі; елементи, що
знаходяться на решті місць, у всіх трьох визначниках одній й ті самі. Для доведення цієї властивості досить застосувати правило трикутника до всіх записаних тут визначників і порівняти одержані результати.
8.Якщо до елементів деякого рядка визначника додати відповідні елементи
іншого рядка, помножені на довільний спільний множник, то значення визначника при цьому не зміниться.
Ця властивість є наслідком властивостей 6 і 7.
Визначники довільного порядку.
У формулі стосовно визначника третього порядку є шість доданків у вигляді добутків трьох елементів матриці, що містять
по одному елементу з її кожного рядка і кожного стовпця. У кожного з цих добутків співмножники розміщено в порядку зростання першого індекси утворюють різноманітні перестановки з чисел 1,2,3.
Нехай j=(j1,j2,j3) – перестановка, де j1 ,j2 ,j3 – числа 1,2,3, розміщені в певному порядку.
Інверсією в перестановці j називають той факт, що більше число передує меншому. Число інверсій у перестановці j позначимо символом а(j).Перестановка
називається парною, якщо а(j) – парне число, і непарною - у протилежному випадку. Наприклад, перестановка (2,3,1) – парна, оскільки а(2,1,3)=1.
Неважко помітити, що до правої частини формули зі знаком „плюс» входять ті добутки, в яких другі індекси елементів матриці утворюють парну перестановку,
і зі знаком „мінус добутки, в яких другі індекси елементів матриці утворюють
непарну перестановку. Це дає можливість дати ще таке означення визначника
третього порядку : визначником третього порядку, що відповідає матриці, називається число, яке визначається рівністю
А==.
де підсумовування поширюється на всі можливості перестановки j=(j1,j2,j3) других індексів. Це означення легко узагальнюється на випадок квадратної матриці
А=.
довільного порядку n(n є N).
Визначником n–го порядку, що відповідає матриці називається число, яке визначається рівністю
А==
де підсумовування поширюється на можливі перестановки j=(j1,j2…jn) других індексів.
Зазначимо без доведення, що розглянуті вище властивості 1–8 визначників другого та третього порядків справджується для визначників довільного порядку.
Використання цих властивостей дає змогу замінити обчислення визначників високих порядків за формулою на простіше.
Мінором Мik , що відповідає елементу аik(1і,kn) матриці називається визначник, який відповідає матриці, утвореній з матриці викреслюванням і – го рядка та k – го стовпця.
Алгебричним доповненням Аik елемента аik(1і, kn) матриці називається відповідний мінор, взятий зі знаком „плюс”, якщо сума його індексів парна, і зі знаком „мінус”, якщо сума його індексів непарна :
Аik =( -1)i+kМik.
Теорема 3.1. Значення det(A) визначника, що визначає матрицю, дорівнює сумі добутків елементів довільного рядка або довільного стовпця на відповідні алгебричні доповнення :
det(A)=ai1Ai1+ai2Ai2 +…+ainAin(i=1, 2,…,n);
det(A) =a1kA1k+a2kA2k+…+ankAnk(k=1,2,…,n).
Доведемо теорему стосовно визначника третього порядку. Формула дає
det(A)=a11(a22a33-a23a32)+a12[-(a21a33-a23a31)]+a13(a21a32-a22a31)=a11A11+a12A12+a13A13 .
Аналогічно
det (A)=a21A21+a22A22+a23A23=…=a13A13+a23A23+a33A33.
Доведена теорема дає можливість звести обчислення визначника n – го порядку
(n3) до визначника (n–1)–го порядку. Формули називають формулами розкладання визначника за елементами і–го рядка (k–го стовпця).
Теорема 3.2. Сума добутків елементів довільного рядка (стовпця) матриці на алгебричні доповнення відповідних елементів іншого її рядка (стовпця) дорівнює
нулю :
ai1 Aj1+ai2 Aj2+…+ain Ajn=0(ij ;j=1,2,…,n);
a1k A1s+a2k A2s+…+ank Ans=0(ks; s=1,2,…,n).
Текст програми на мові Turbo Pascal.
Uses crt;
const n=4;
var
m,v,vv,mm:array [1..n,1..n] of real;
I,j:integer;k,d:real;
begin
writeln(‘введи матрицю’);
for i:=1 to n do
for j:=1 to n do
begin
readln(m[I,j]);
end;
for i:=2 to n do
for j:=1 to n do
begin
k:=m[I,1]/m[1,1];
v[1,j]:=m[1,j];
v[I,j]:=m[1,j]*(-k)+m[I,j];
end;
for i:=3 to n do
for j:=2 to n do
begin
k:=v[I,2]/v[2,2];
mm[1,1]:=v[1,1];
mm[1,j]:=v[1,j];
mm[2,1]:=v[2,1];
mm[2,j]:=v[2,j];
mm[I,1]:=v[I,1];
mm[I,j]:=v[2,j]*(-k)+v[I,j];
end;
for i:=4 to n do
for j:=3 to n do
begin
k:=mm[I,3]/mm[3,3];
vv[I,j]:=mm[3,j]*(-k)+mm[I,j];
end;
for i:=1 to n do
for j:=1 to n do
begin
vv[1,j]:=mm[1,j];
vv[2,j]:=mm[2,j];
vv[3,j]:=mm[3,j];
vv[I,1]:=mm[I,1];
vv[I,2]:=mm[I,2];
d:=1;
if (i=j) then d:=d*vv[I,j];
writeln(vv[I,j]:2:2);
end;
writeln('визначник даної матрици',d:2:2);
end.
Результат роботи програми.
Дано матрицю 4*4 . Знайти її визначник.
A=;