Вторая пачка часть 52


.50] OF REAL; MSS = ARRAY [1..50] OF MST; VAR A1 : MSS; B1 : MST; I, J, M, K : INTEGER; H : REAL; BEGIN FOR I := 1 TO N DO BEGIN B1[I] := B[I]; FOR J := 1 TO N DO A1 [I,J] := A[I,J]; END; TOL := 0; IF N > 50 THEN BEGIN TOL := 2; EXIT; END; FOR I := 1 TO N-1 DO FOR J := I+1 TO N DO BEGIN IF ABS(A1[I,I])< 1.0E-10 THEN BEGIN TOL := 1; EXIT; END; A1[J,I] :=- A1[J,I] / A1[I,I]; FOR K := I+1 TO N DO A1[J,K] := A1 [J,K] + A1[J,I]*A1[I,K]; B1[J] := B1[J] + B1[I]*A1[J,I] END; IF ABS(A1[N,N]) < 1.0E-10 THEN BEGIN TOL := 1; EXIT; END; X[N] := B1[N] / A1[N,N]; FOR I := N-1 DOWNTO 1 DO BEGIN IF ABS(A1[I,I]) < 1.0E-10 THEN BEGIN TOL := 1; EXIT; END; H := B1[I]; FOR J := I+1 TO N DO H := H - X[J]*A1[I,J]; X[I] := H / A1[I,I]; END; END. По поводу приведенных ал¬го¬рит¬мов можно скବзать, что они не самые эф¬фек¬тив¬ные и при¬год¬ны для ре¬ше¬ния систем, имеющих невырожденные матрицы А и В с рангом не бо-лее 50, составленные из при¬бли¬зи¬тельно оди¬на-ко¬вых ко¬эф¬фи¬ци¬ентов. Если ме欬ду на¬и¬большим и на¬и¬мень¬шим из ко¬эф¬¬фи¬ци¬ен¬тов рас¬стоя¬ние более чем 104, то эти а묬го¬ритмы при¬ме¬нять не рекомендуется, так как по¬греш¬ность вы¬чис¬¬ле-ний бу¬дет тବкова, что может ли¬бо привести к вы¬¬рож¬ден¬ной мат¬ри¬це А, ли¬бо дать в ре¬зультате веꬬтор Х с боль¬шой вы¬чис¬¬л謬тель¬ной по¬греш¬нос-тью. Для проверки работы процедур ре¬шим сис¬¬тему ли¬ней¬ных уравнений методом Гаусса с точ¬нос¬тью до 0.0001: Коэффициенты, промежуточные результаты и око¬н¬чательное решение приводятся в таб¬л. 1.14. Подобные таб¬лицы удобно ис¬поль¬зо¬вать для руч¬ного счета и про-вер¬ки хода ре¬ше¬ни¬я. Таблица 1.14 Коэффициенты при неизвестных Cвободные Cтрочные x1 x2 x3 x4 члены суммы 0.68 0.21 0.11 -0.08 0.55 -0.13 0.84 0.15 -0.11 0.27 0.28 0.50 0.88 0.80 -0.06 0.12 2.15 0.44 0.83 1.16 2.85 -0.01 1.44 0
Индекс
Элементарные функции    Линейные уравнения    Нелинейные уравнения    Случайные числа


Hosted by uCoz