Термінова допомога студентам
Дипломи, курсові, реферати, контрольні...

Решение систем лінійних алгебраїчних рівнянь

РефератДопомога в написанніДізнатися вартістьмоєї роботи

Одна з труднощів практичного розв’язання систем великий розмірності связанна з обмеженістю оперативної пам’яті ЕОМ. Хоча обсяг оперативної пам’яті знову створюваних обчислювальних машин зростає нас дуже швидко, тим щонайменше, рішуче зростають потреби практики у вирішенні завдань дедалі більшої розмірності. У значною мірою обмеження на розмірність розв’язуваних систем можна зняти, якщо… Читати ще >

Решение систем лінійних алгебраїчних рівнянь (реферат, курсова, диплом, контрольна)

Решение систем лінійних алгебраїчних уравнений

Введение

Решение систем лінійних алгебраїчних рівнянь — одну з основних завдань обчислювальної лінійної алгебри. Хоча завдання рішення системи лінійних рівнянь порівняно рідко представляє самостійний інтерес для додатків, уміння ефективно вирішувати такі часто залежить сама можливість математичного моделювання найрізноманітніших процесів із застосуванням ЕОМ. Значна частина про чисельні методів розв’язання різноманітних (особливо — нелінійних) завдань включає у собі рішення систем лінійних рівнянь як елементарний крок відповідного алгоритма.

Одна з труднощів практичного розв’язання систем великий розмірності связанна з обмеженістю оперативної пам’яті ЕОМ. Хоча обсяг оперативної пам’яті знову створюваних обчислювальних машин зростає нас дуже швидко, тим щонайменше, рішуче зростають потреби практики у вирішенні завдань дедалі більшої розмірності. У значною мірою обмеження на розмірність розв’язуваних систем можна зняти, якщо використовуватиме зберігання матриці зовнішні запам’ятовуючі пристрої. Проте у разі багаторазово зростають як машинного часу, і складність відповідних алгоритмів. Тому, за створенні обчислювальних алгоритмів лінійної алгебри багато уваги приділяють способам компактного розміщення елементів матриць у пам’яті ЭВМ.

К щастю, докладання часто-густо призводять до матрицями, у яких число ненульових елементів набагато меншою загального чила елементів матриці. Такі матриці прийнято називати разреженными. Однією з основні джерела розріджених матриць є математичні моделі технічних пристроїв, які з значної частини елементів, зв’язок між якими локальны. Найпростіші приклади таких пристроїв — складні будівельні конструкції та великі електричні цепи.

Известны приклади вирішених останніми роками завдань, де число невідомих досягало сотень тисяч. Природно, було б неможливо, якби матриці не були разреженными (матриця системи зі ста тис. рівнянь в форматі подвійний точності посіла б близько 75 Гбайт).

1. Теоретична часть

1.1. Метод Гаусса

Одним із поширених методів рішення систем лінійних рівнянь є метод Гаусса. Цей метод (також називають методом послідовного винятку невідомих) відомий у різних варіантах вже з більш 2000 лет.

Вычисления з допомогою методу Гаусса полягають у послідовному виключення невідомих з системи для перетворення її до еквівалентній системі з верхньої трикутною матрицею. Обчислення значень невідомих виробляють на етапі зворотного хода.

1.1.1. Схема єдиного розподілу. Розглянемо спочатку найпростіший варіант методу Гаусса, званий схемою єдиного деления.

Прямой хід складається з n — 1 кроків исключения.

1-й крок. Метою такого кроку є виняток невідомого x1 з рівнянь з номерами і = 2, 3, …, n. Припустимо, що коефіцієнт a11 ¹ 0. Будемо називати головним елементом 1-го шага.

Найдем величины.

qi1 = ai1/a11 (і = 2, 3, …, n),.

называемые множителями 1-го кроку. Віднімемо послідовно з другого, третього, …, n-го рівнянь системи перше рівняння, помножена відповідно на q21, q31, …, qn1. Це дозволить перетворити на нуль коефіцієнти при x1 переважають у всіх рівняннях, крім першого. Через війну одержимо еквівалентну систему.

a11×1 + a12×2 + a13×3 + … + a1nxn = b1 ,.

a22(1)x2 + a23(1)x3 + … + a2n (1)xn = b2(1) ,.

a32(1)x2 + a33(1)x3 + … + a3n (1)xn = b3(1) ,.

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

an2(1)x2 + an3(1)x3 + … + ann (1)xn = bn (1) .

в якої aij (1) і bij (1) обчислюються по формулам.

aij (1) = aij? qi1a1j, bi (1) = bi? qi1b1.

2-й крок. Метою такого кроку є ислючение невідомого x2 з рівнянь з номерами і = 3, 4, …, n. Нехай a22(1)? 0, де a22(1) — коефіцієнт, званий головним (або ведучим) елементом 2-го кроку. Обчислимо множники 2-го шага.

qi2 = ai2(1) / a22(1) (і = 3, 4, …, n).

и віднімемо послідовно з третього, четвертого, …, n-го рівняння системи друге рівняння, помножена відповідно на q32, q42, …, qm2. Через війну одержимо систему.

a11×1 + a12×2 + a13×3 + … + a1nxn = b1 ,.

a22(1)x2 + a23(1)x3 + … + a2n (1) = b2(1) ,.

a33(2)x3 + … + a3n (2)xn = b3(2) ,.

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

an3(2)x3 + … + ann (2)xn = bn (2) .

Здесь коефіцієнти aij (2) і bij (2) обчислюються по формулам.

aij (2) = aij (1) — qi2a2j (1), bi (2) = bi (1) — qi2b2(1).

Аналогично проводяться інші кроки. Наведемо черговий k-й шаг.

k-й крок. У припущенні, що головна (провідний) елемент k-го кроку akk (k-1) різниться від нуля, обчислимо множники k-го шага.

qik = aik (k-1) / akk (k-1) (і = k + 1, …, n).

и віднімемо послідовно з (k + 1)-го, …, n-го рівнянь отриманої попередньому кроці системи k-e рівняння, помножена відповідно на qk+1,k, qk+2,k, …, qnk.

После (n — 1)-го кроку винятку одержимо систему уравнений.

a11×1 + a12×2 + a13×3 + … + a1nxn = b1 ,.

a22(1)x2 + a23(1)x3 + … + a2n (1)xn = b2(1) ,.

a33(2)x3 + … + a3n (2)xn = b3(2) ,.

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

ann (n-1)xn = bn (n-1) .

матрица A (n-1) якої є верхньої трикутною. У цьому обчислення прямого ходу заканчиваются.

Обратный хід. З останнього рівняння системи знаходимо xn. Підставляючи знайдене значення xn в передостаннє рівняння, одержимо xn-1. Здійснюючи зворотний підстановку, далі послідовно знаходимо xn-1, xn-2, …, x1. Обчислення невідомих тут проводяться по формулам.

xn = bn (n-1) / ann (n-1),.

xk = (bn (k-1) — ak, k+1(k-1)xk+1 — … — akn (k-1)xn) / akk (k-1), (k = n — 1, …, 1).

Необходимость вибору головних елементів. Зауважимо, що обчислення множників, і навіть зворотна підстановка вимагають розподілу на головні елементи akk (k-1). Тому якщо з головних елементів оказывыется рівним нулю, то схема єдиного розподілу може бути реалізована. Здоровий сенс підказує, що у ситуації, коли всі головні елементи відмінні від нуля, але у тому числі близькі нанівець, може бути неконтрольований зростання погрешности.

1.1.2. Метод Гаусса з головного елемента по стовпцю (схема часткового вибору). Опис методу. На k-м кроці прямого ходу коефіцієнти рівнянь системи з номерами і = k + 1, …, n перетворюються по формулам.

aij (k) = aij (k-1)? qikakj, bi (k) = bi (k-1)? qikbk (k-1), і = k + 1, …, n.

Интуитивно ясно, аби уникнути сильного зростання коефіцієнтів системи та пов’язаних із цим помилок не можна допускати появи великих множників qik.

В методі Гаусса з головного элементоа по стовпцю гарантується, що |qik|? 1 всім k = 1, 2, …, n — 1 і і = k + 1, …, n. Відмінність цього варіанту методу Гаусса від схеми єдиного розподілу у тому, що у k-м кроці винятку як головне елемента вибирають максимальний по модулю коефіцієнт aikk при невідомої xk в рівняннях з номерами і = k + 1, …, n. Потім відповідне обраному коефіцієнта рівняння з номером ik змінюють місцями з k-м рівнянням системи у тому, щоб головні елементи посів місце коефіцієнта akk (k-1). Після цієї перестановки виняток невідомого xk виробляють, як і схемою єдиного деления.

1.1.3. Метод Гаусса з головного елемента у всій матриці (схема повного вибору). У таку схему допускається порушення природного порядку винятку неизвестных.

На 1-му кроці мтода серед елементів aij визначають максимальний по модулю елемент ai1j1. Перше рівняння системи та рівняння з номером i1 змінюють місцями. Далі стандартним чином виробляють виняток невідомого xi1 із усіх рівнянь, крім первого.

На k-м кроці методу серед коефіцієнтів aij (k-1) при невідомих в рівняннях системи з номерами і = k, …, n вибирають максимальний по модулю коефіцієнт aikjk (k-1). Потім k-е рівняння і рівняння, що містить знайдений коефіцієнт, змінюють місцями, що виключають невідоме xjk з рівнянь з номерами і = k + 1, …, n.

На етапі зворотного ходу невідомі обчислюють у порядку: xjn, xjn-1, …, xj1.

1.2. Метод Зейделя

1.2.1. Приведення системи до виду, зручного для ітерацій. Щоб застосувати метод Зейделя до вирішення системи лінійних алгебраїчних уравнений.

Ax = b.

с квадратної невырожденной матрицею A, необхідно попередньо перетворити неї до виду.

x = Bx + c.

Здесь B — квадратна матриця із елементами bij (і, j = 1, 2, …, n), з — вектор-столбец із елементами cij (і = 1, 2, …, n).

У розгорнутої формі записи система має наступний вид:

x1 = b11×1 + b12×2 + b13×3 + … + b1nxn + c1.

x2 = b21×1 + b22×2 + b23×3 + … + b2nxn + c2.

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

xn = bn1x1 + bn2x2 + bn3x3 + … + bnnxn + cn.

Власне кажучи, операція приведення системи до виду, зручного для ітерацій, перестав бути простий і вимагає спеціальних знань, і навіть істотного використання специфіки системы.

Найпростіший спосіб приведення системи до виду, зручного для ітерацій, ось у чому. З першого рівняння системи висловимо невідоме x1:

x1 = a11−1 (b1 — a12×2 — a13×3 — … — a1nxn),.

из другого рівняння — невідоме x2:

x2 = a21−1 (b2 — a22×2 — a23×3 — … — a2nxn),.

и т. буд. У результаті одержимо систему.

x1 = b12×2 + b13×3 + … + b1, n-1xn-1 + b1nxn+ c1 ,.

x2 = b21×1 + b23×3 + … + b2, n-1xn-1 + b2nxn+ c2 ,.

x3 = b31×1 + b32×2 + … + b3, n-1xn-1 + b3nxn+ c3 ,.

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

xn = bn1x1 + bn2x2 + bn3x3 + … + bn, n-1xn-1 + cn ,.

в чим головною діагоналі матриці B перебувають нульові елементи. Інші елементи виражаються по формулам.

bij = -aij / aii, ci = bi / aii (і, j = 1, 2, …, n, j? i).

Звісно, щодо можливості виконання зазначеного перетворення необхідно, щоб діагональні елементи матриці A були ненулевыми.

1.2.1. Опис методу. Введемо нижню і верхню трикутні матрицы.

0 0 0 … 0 0 b12 b13 … b1n.

b21 0 0 … 0 0 0 b23 … b2n.

B1 = b31 b32 0 … 0, B2 = 0 0 0 … b3n.

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

bn1 bn2 bn3 … 0 0 0 0 … 0.

Зауважимо, що B = B1 + B2 і а тому вирішення x вихідної системи задовольняє равенству.

x = B1x + B2 x + з .

Виберемо початкова наближення x (0) = [x1(0), x2(0), …, xn (0)]T. Підставляючи їх у праву частина рівності при верхньої трикутною матриці B2 і вираховуючи отримане вираз, знаходимо перше приближение.

x (1) = B1x (0) + B2x (1).

Подставляя наближення x (1), получим.

x (2) = B1x (1) + B2x (2).

Продолжая цей процес далі, одержимо послідовність x (0), x (1), …, x (n), … наближень до вычисляемых по формуле.

x (k+1) = B1(k+1) + B2(k) + c.

или в розгорнутої формі записи.

x1(k+1) = b12×2(k) + b13×2(k) + … + b1nxn (k) + c1 ,.

x2(k+1) = b21×1(k+1) + b23×3(k) + … + b2nxn (k) + c2 ,.

x3(k+1) = b31×1(k+1) + b32×2(k+1) + … + b3nxn (k) + c3 ,.

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

xn (k+1) = bn1x1(k+1) + bn2x2(k+1) + bn3x3(k+1) + … + cn .

Об'єднавши приведення системи до виду, зручного для ітерацій і метод Зейделя до однієї формулу, получим.

xi (k+1) = xi (k) — aii-1(?j=1i-1 aijxj (k+1) + ?j=1n aijxi (k) — bi).

Тогда достатня умова сходимоти методу Зейделя будет.

?j=1, j? i n | aij | < | aii |.

(условие доминированния диагонали).

Метод Зейделя іноді називають також методом Гаусса-Зейделя, процесом Лібмана, методом послідовних замещений.

1.3. Порівняння прямих і итерационных методов

Системи лінійних алгебраїчних рівнянь можна вирішити як за допомогою прямих, і і итерационных методів. Для систем рівнянь середньої розмірності частіше использют прямі методы.

Итерационные методи застосовують переважно вирішення завдань великий розмірності, коли використання прямих методів неможливо через ограниченииий у доступній оперативної пам’яті ЕОМ чи то з необхідність виконання черезмерно значної частини арифметичних операцій. Великі системи рівнянь, що у основному додатках, зазвичай є разреженными. Методи винятку для систем з розрідженим і матрицями незручні, наприклад, тим, що з використанні їх велика кількість нульових елементів перетворюється на ненульові і матриця втрачає властивість розрідженості. У протилежність їм під час использованнии итерационных методів у ході итерационного процесу матриця не змінюється, і її, природно, залишається розрідженій. Велика ефективність итерационных методів проти прямими методами тісно связанна із можливістю істотного використання розрідженості матриц.

Застосування итерационных методів для якісного рішення великий системи рівнянь потребує серйозного використання структури, спеціальних знань й жодного певного опыта.

2. Практична часть

2.1 Програма рішення систем лінійних рівнянь методом Гаусса

2.1.1. Постановка завдання. Потрібна вирішити систему лінійних алгебраїчних рівнянь з речовими коефіцієнтами вида.

a11×1 + a12×2 + … + a1nxn = b1, a21×2 + a22×2 + … + a2nxn = b2, .. .. .. .. .. .. .

an1x1 + an2x2 + … + annxn = bn.

для n? 10 методом Гаусса.

2.1.2. Тестовий пример.

3,2×1 + 5,4×2 + 4,2×3 + 2,2×4 = 2,6 ,.

2,1×1 + 3,2×2 + 3,1×3 + 1,1×4 = 4,8 ,.

1,2×1 + 0,4×2 — 0,8×3 — 0,8×4 = 3,6 ,.

4,7×1 + 10,4×2 + 9,7×3 + 9,7×4 = -8,4 ,.

x1 = 5, x2 = -4, x3 = 3, x4 = -2.

2.1.3. Опис алгоритму. У цьому програмі реалізований метод Гаусса зі схемою часткового вибору.

В зміну n вводиться порядок матриці системи. З допомогою допоміжної процедури ReadSystem в двомірний масив a і одновимірний масив b вводиться з клавіатури розширена матриця системи, після чого обидва масиву і змінна n передаються функції Gauss. У фукции Gauss кожному за k-го кроку обчислень виконується пошук максимального елемента у k-м стовпці матриці начинаяя з k-й рядки. Номер рядки, що містить максимальний елемент сохраняеется в перемінної l. У разі якщо максимальний елемент перебуває в k-й рядку, рядки з номерами k і l змінюються місцями. Якщо усі ці елементи рівні нулю, це відбувається припинення виконання функції Gauss з результатом false. Після вибору рядки виконується перетворення матриці методом Гаусса. Далі обчислюється рішення системи та міститься у масив x. Отримане рішення виводиться на екран з допомогою допоміжної процедури WriteX.

2.1.4. Лістинг програми розвитку й результати работы.

Uses CRT;

Const.

maxn = 10;

Type.

Data = Real;

Matrix = Array[1.maxn, 1. maxn] of Data;

Vector = Array[1.maxn] of Data;

{ Процедура введення розширеній матриці системи }.

Procedure ReadSystem (n: Integer; var a: Matrix; var b: Vector);

Var.

і, j, r: Integer;

Begin.

r := WhereY;

GotoXY (2, r);

Write («A »);

For і := 1 to n do begin.

GotoXY (i*6+2, r);

Write (i);

GotoXY (1, r+i+1);

Write (i:2);

end;

GotoXY ((n+1)*6+2, r);

Write («b »);

For і := 1 to n do begin.

For j := 1 to n do begin.

GotoXY (j * 6 + 2, r + і + 1);

Read (a[i, j]);

end;

GotoXY ((n + 1) * 6 + 2, r + і + 1);

Read (b[i]);

end;

End;

{ Процедура виведення результатів }.

Procedure WriteX (n :Integer; x: Vector);

Var.

і: Integer;

Begin.

For і := 1 to n do.

Writeln («x », і, «= «, x[i]);

End;

{ Функція, реалізує метод Гаусса }.

Function Gauss (n: Integer; a: Matrix; b: Vector; var x: Vector): Boolean;

Var.

і, j, k, l: Integer;

q, m, t: Data;

Begin.

For k := 1 to n — 1 do begin.

{ Шукаємо рядок l з максимальним елементом в k-ом столбце}.

l := 0;

m := 0;

For і := k to n do.

If Abs (a[i, k]) > m then begin.

m := Abs (a[i, k]);

l := i;

end;

{ Якщо в всіх рядків від k до n елемент в k-м стовпці нулевой,.

то система має не має однозначного рішення }.

If l = 0 then begin.

Gauss := false;

Exit;

end;

{ Змінюємо місцем l-ую рядок з k-ой }.

If l k then begin.

For j := 1 to n do begin.

t := a[k, j];

a[k, j] := a[l, j];

a[l, j] := t;

end;

t := b[k];

b[k] := b[l];

b[l] := t;

end;

{ Перетворимо матрицю }.

For і := k + 1 to n do begin.

q := a[i, k] / a[k, k];

For j := 1 to n do.

If j = k then.

a[i, j] := 0.

else.

a[i, j] := a[i, j] - q * a[k, j];

b[i] := b[i] - q * b[k];

end;

end;

{ Обчислюємо рішення }.

x[n] := b[n] / a[n, n];

For і := n — 1 downto 1 do begin.

t := 0;

For j := 1 to n-i do.

t := t + a[i, і + j] * x[i + j];

x[i] := (1 / a[i, і]) * (b[i] - t);

end;

Gauss := true;

End;

Var.

n, і: Integer;

a: Matrix ;

b, x: Vector;

Begin.

ClrScr;

Writeln («Програма рішення систем лінійних рівнянь методом Гаусса »);

Writeln;

Writeln («Запровадьте порядок матриці системи (макр. 10) »);

Repeat.

Write («> «);

Read (n);

Until (n > 0) and (n 4.

Введите розширену матрицю системы.

A 1 2 3 4 b.

1 3.2 5.4 4.2 2.2 2.6.

2 2.1 3.2 3.1 1.1 4.8.

3 1.2 0.4 -0.8 -0.8 3.6.

4 4.7 10.4 9.7 9.7 -8.4.

Результат обчислень методом Гаусса.

x1 = 5.00E+00.

x2 = -4.00E+00.

x3 = 3.00E+00.

x4 = -2.00E+00.

2.2 Програма рішення систем лінійних рівнянь методом Зейделя.

2.2.1. Постановка завдання. Потрібна вирішити систему лінійних алгебраїчних рівнянь з речовими коефіцієнтами вида.

a11×1 + a12×2 + … + a1nxn = b1, a21×2 + a22×2 + … + a2nxn = b2, .. .. .. .. .. .. .

an1x1 + an2x2 + … + annxn = bn.

для n? 10 методом Зейделя.

2.2.2. Тестовий пример.

4,1×1 + 0,1×2 + 0,2×3 + 0,2×4 = 21,14 ,.

0,3×1 + 5,3×2 + 0,9×3 — 0,1×4 = - 17,82 ,.

0,2×1 + 0,3×2 + 3,2×3 + 0,2×4 = 9,02 ,.

0,1×1 + 0,1×2 + 0,2×3 — 9,1×4 = 17,08 ,.

x1 = 5,2, x2 = -4,2, x3 = 3, x4 = -1,8.

2.2.3. Опис алгоритму. У зміну n вводиться порядок матриці системи, в зміну e — максимальна абсолютна похибка. З допомогою допоміжної процедури ReadSystem в двомірний масив a і одновимірний масив b вводиться з клавіатури розширена матриця системи. Початкова прибижение передбачається рівним нулю. Обидва масиву і які змінюються n і e передаються функції Seidel. До функцій Seidel досліджується відповідність системи, у тому разі, якщо система має не сходиться, виконання функції припиняється результат false. У результаті кожної ітерації обчислюється нове наближення й абсолютна похибка. Коли отримана похибка стає менше заданої, виконання функції припиняється. Отримане рішення виводиться на екран з допомогою допоміжної процедури WriteX.

2.2.4. Лістинг програми розвитку й результати работы.

Uses CRT;

Const.

maxn = 10;

Type.

Data = Real;

Matrix = Array[1.maxn, 1. maxn] of Data;

Vector = Array[1.maxn] of Data;

{ Процедура введення розширеній матриці системи }.

Procedure ReadSystem (n: Integer; var a: Matrix; var b: Vector);

Var.

і, j, r: Integer;

Begin.

r := WhereY;

GotoXY (2, r);

Write («A »);

For і := 1 to n do begin.

GotoXY (i * 6 + 2, r);

Write (i);

GotoXY (1, r + і + 1);

Write (i:2);

end;

GotoXY ((n + 1) * 6 + 2, r);

Write («b »);

For і := 1 to n do begin.

For j := 1 to n do begin.

GotoXY (j * 6 + 2, r + і + 1);

Read (a[i, j]);

end;

GotoXY ((n + 1) * 6 + 2, r + і + 1);

Read (b[i]);

end;

End;

{ Процедура виведення результатів }.

Procedure WriteX (n :Integer; x: Vector);

Var.

і: Integer;

Begin.

For і := 1 to n do.

Writeln («x », і, «= «, x[i]);

End;

{ Функція, реалізує метод Зейделя }.

Function Seidel (n: Integer; a: Matrix; b: Vector; var x: Vector; e: Data) :Boolean;

Var.

і, j: Integer;

s1, s2, p. s, v, m: Data;

Begin.

{ Досліджуємо відповідність }.

For і := 1 to n do begin.

p.s := 0;

For j := 1 to n do.

If j і then.

p.s := p. s + Abs (a[i, j]);

If p. s >= Abs (a[i, і]) then begin.

Seidel := false;

Exit;

end;

end;

Repeat.

m := 0;

For і := 1 to n do begin.

{ Обчислюємо суми }.

s1 := 0;

s2 := 0;

For j := 1 to і - 1 do.

s1 := s1 + a[i, j] * x[j];

For j := і to n do.

s2 := s2 + a[i, j] * x[j];

{ Обчислюємо нове наближення і похибка }.

v := x[i];

x[i] := x[i] - (1 / a[i, і]) * (s1 + s2 — b[i]);

If Abs (v — x[i]) > m then.

m := Abs (v — x[i]);

end;

Until m < e;

Seidel := true;

End;

Var.

n, і: Integer;

a: Matrix;

b, x: Vector;

e: Data;

Begin.

ClrScr;

Writeln («Програма рішення систем лінійних рівнянь методом Зейделя »);

Writeln;

Writeln («Запровадьте порядок матриці системи (макр. 10) »);

Repeat.

Write («> «);

Read (n);

Until (n > 0) and (n ");

Read (e);

Until (e > 0) and (e < 1);

Writeln;

Writeln («Запровадьте розширену матрицю системи »);

ReadSystem (n, a, b);

Writeln;

{ Припускаємо початкова наближення рівним нулю }.

For і := 1 to n do.

x[i] := 0;

If Seidel (n, a, b, x, e) then begin.

Writeln («Результат обчислень методом Зейделя »);

WriteX (n, x);

end.

else.

Writeln («Метод Зейделя не сходиться для даної системи »);

Writeln;

End.

Программа рішення систем лінійних рівнянь методом Зейделя Введите порядок матриці системи (макр. 10).

>4.

Введите точність вычислений.

>.1.

Введите розширену матрицю системы.

A 1 2 3 4 b.

1 4.1 0.1 0.2 0.2 21.14.

2 0.3 5.3 0.9 -0.1 -17.82.

3 0.2 0.3 3.2 0.2 9.02.

4 0.1 0.1 0.2 -9.1 17.08.

Результат обчислень методом Зейделя.

x1 = 5.200 000 0008E+00.

x2 = -4.200 000 0028E+00.

x3 = 3.03E+00.

x4 = -1.800 000 0000E+00.

Список литературы

Для підготовки даної роботи було використані матеріали із сайту internet.

Показати весь текст
Заповнити форму поточною роботою