Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.01.2021, 12:30   #1
Sky1fall
Новичок
Джуниор
 
Регистрация: 22.01.2021
Сообщений: 1
По умолчанию СЛАУ методом Зейделя

Нужна помощь, есть прога для метода простых итераций, нужно переделать под метод зейделя. Буду очень благодарен
Uses CRT;
var A: array [1..3,1..3] of real;
b,x,otv: array [1..3] of real;
i,j,n,r,iter: integer;
eps: real;
pr: boolean;

begin

Writeln;
write('Введите количество уравнений системы n=');
readln(n);
Writeln;
Writeln('Введите элементы матрицы a и свободные члены b');

r := WhereY;
GotoXY(2, r);
Write('A');
For i := 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 i := 1 to n do begin
For j := 1 to n do begin
GotoXY(j*6+2,r+i+1);
Read(a[i, j]);
end;
GotoXY((n+1)*6+2,r+i+ 1);
Read(b[i]);
end;
if a[i,i]=0 then begin
writeln('ошибка ввода');
exit;
end;

Writeln;
writeln('Преобразованная матрица');

for i:=1 to n do
begin
for j:=1 to n do
begin
if i=j then continue;
a[i,j]:=-a[i,j]/a[i,i];
end;

b[i]:=b[i]/a[i,i];
a[i,i]:=0;
end;

for i:=1 to n do
begin
for j:=1 to n do
write(a[i,j]:4:2,' ');
writeln(b[i]:4:2);
end;
for i:=1 to n do
x[i]:=0;
Writeln;
write('Точность= ');
read(eps);
Writeln;
Writeln('Результат ');
iter:=0;
repeat
for i:=1 to n do
begin
for j:=1 to n do
otv[i]:=otv[i]+a[i,j]*x[j];
otv[i]:=otv[i]+b[i];
end;

for i:=1 to n do
if abs(otv[i]-x[i])<eps then pr:=true;

for i:=1 to n do
begin
x[i]:=otv[i];
otv[i]:=0;
end;
iter:=iter+1;
until pr;
Writeln('Количество итераций = ', iter);
For i := 1 to n do
Writeln('x', i, ' = ', x[i]:5:2);

end.
Sky1fall вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Метод прогонки, Зейделя, Якоби для СЛАУ(Paskal) Мельхиора Паскаль, Turbo Pascal, PascalABC.NET 1 29.04.2014 18:15
Решение СЛАУ методом Гаусса и методом Крамера. R1k1 Помощь студентам 0 24.03.2012 19:17
Решения СЛАУ методом Гаусса и Зейделя [ICQ] Помощь студентам 0 04.05.2010 20:51
Решение СЛАУ методом Зейделя на Delphi Кнопик Помощь студентам 2 01.11.2009 13:05