Основы применения вычислительной техники и программирование. Беспалов В.В. - 69 стр.

UptoLike

Составители: 

x
1
= (b
1
a
11
x
1
a
12
x
2
... a
1n
x
n
) / a
11
+ x
1
;
x
2
= (b
2
a
21
x
1
a
22
x
2
... a
2n
x
n
) / a
22
+ x
2
;
……………………………………................... (8.10)
x
n
= (b
n
a
n1
x
1
a
n2
x
2
... a
nn
x
n
) / a
nn
+ x
n
.
Левую часть уравнений будем считать новыми (последующими)
значениями переменных, а x
i
в правой частипредыдущими значения-
ми переменных. Первоначально массив X имеет нулевые значения. За-
тем на каждой итерации вычисляется Sдобавка для каждого x
i
, кото-
рая приближает его к искомому значению. Процесс продолжается до
тех пор, пока добавка для каждого x
i
будет меньше заданной погрешно-
сти вычислений.
Реализация метода на языке Паскаль
Ввод данных рекомендуется организовать так же, как и в методе
Гаусса. Далее приводится возможный вариант реализации метода:
for k:=1 to m do
begin
z:=k;
for i:=1 to n do
begin
s:=a[i,n+1];
for j:=1 to n do s:=s-a[i,j]*x[j];
s:=s/a[i,i];
x[i]:=x[i]+s;
if abs(s)>e then z:=0
end;
if z<>0 then Break;
end;
Здесь
mмаксимальное число итераций (для избежания беско-
нечного цикла);
zпеременная, обнуляющаяся, если хотя бы одна из
переменных отличается от предыдущего значения более чем на Е, и со-
держащая число итераций, если система сошлась.
Остаётся только вывести результат и сделать проверку.
8.6. Метод простых итераций
Метод простых итераций немного отличается от метода Зейделя.
Здесь имеется два вектора переменных: с предыдущими значениями
X0
70