Файл: Гемст В.К. Процедуры АЛГОЛ-60 в примерах [практикум].pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 27.07.2024
Просмотров: 116
Скачиваний: 2
2.3.16, Обращение матрицы методом Гаусса - Жордана (второй вариант)
Обратить |
матрицу |
01 |
и найти ее определитель |
|
|
|
I |
2 |
3 |
|
|
2 |
к |
5 |
|
|
3 |
5 |
6 |
если epS |
= 0,1 10“^. |
|
|
|
Решение. Исходная |
программа: |
|
-01-
ТРАНСЛЯТОР МЭИ-3
'BEGИ '
'HEAo’EPS.JET,,
'INTEGER':!.,
'ARkAY '/(/1:3,1:3/).,
'PROCEDURE 'l.!VEHSI0:|(4,EPa,SIG;iAL,)l)ATERESULT:(A)RESUuT:(i)E T).,
"vajje ’!,EP. ., 'rEAu *EPR,J£T., 1ilTEGEii ,'J.,
'a r r a y 'a ,, UABEli SIGJAij.,
’ BEGI.4'
ivEAlj Y ,и,,
'iRTEGEk'l.J.K.k.P.,
'ARRAY'В ,С ( /1 : П / ) . ,
'L'!TE«EK''ARRAY'£(/l:;J/).,
PET:» 1.0.,
‘fOk'j :=i‘tiTEP'l'lKfTIb’n '0O*2(/J/) j®Jt,
97
'f'OK’li-i'STEP ’l'UNTIb V d o * ’BEGIm"
yV»A(/I,I/).,
'FOh ’j :=P ’STEP Vu:(TIi/:j'JO' 'begi Г
'IF \A!3„(V/) ‘GT 'ABE(Y) *ТЬЕ,ч; 'begi i’
it
Y:=>W
'Eli)'*
'E.fO’j., '
DETs-YXOET.,
IF AB..(Y) ^t ’e p g 'т н е ,ч ’’g o t o 'sig.ja
Y:M.C/y .,
'FOK *J :»i ’ВТЕР ’i*U:JTIb ViX) ’ ’BEGI i’
A(/J,s7):=A(/j,i/),r .
A(/J,I/):— C(/j/)x y .,
:=A(/I ,J/) :°A(/Itj/)XY
A(/I,I/>:-Y., “ s'-C/I/).,
2(/I/):»Z(/K/);,
Z(/K/j:-J4,
'FOR*Kj«l'STEP'i’UNTlL'R,P'STEP'l'ONTILt’K'DOi'.tPOfil*Jt -1*step" i’until *r,p 'step’1’until’.4?DO’A(/K,j/} s“A{/K
,J/)-B(/J/)XC(/K/)
'END'I.’,
'ГОК'I:»i"STEP*i'UNTIL'M'DO’REPEATs
'BEGIN"
K;»Z(/1/).,
’IF'K“I'thE.."GOTO*UEXTI., 'FOR'J:=i’STEP'i'UHTIL'N'DO’ ’BEGIN’’
uj-A(/I,J/).,
A(/li,J/)V=', 'ENB'J., "" Ps-Z(/I/).,
-02-
Z(/I/):-Z(/K/).t Z(/K/)l-P.,
B ETJET . , . 'GOTO'REPEAT., NEXTI:
'END'I
'END'INVERSION.,
INPUT(1,if,EPS,A).,
INVERSION(N,EPS,’SIGNAL,A,DET).,
99
OUTPUT(3, *(£ ’),OET,A)., |
|
|
’GOTO'U, |
|
|
SlG'lAbsOUTPUT(4, ’ (T ’ ) ,'(THI |
:BIS :BA гВЬАВЕь :BSIGHAb’)),, |
|
ь: |
|
|
Массив |
исходных данных: |
|
|
+3. |
|
|
+1000000 |
46. |
|
+1000000 |
01. |
|
+200С000 01. |
|
|
+3000000 |
01. |
|
+2000000 |
01i |
|
+4000G00 |
01. |
|
+5000000 |
01. |
|
+3000000' 01. |
|
|
+5000000 |
01. |
|
+60С0000 |
01. |
Результаты вычислении, полученные на узкой печати, |
||
* |
-I000000 +01 |
+9999998 +00 -2999999 +01 +1999999 +01 -2999999 +01 +2999999 +01 -9999999 +00 +1999999 +01 -9999999 +00 -3725290 -08
соответствуют действительным с отклонениями, не превышающими
0,2 Ю ~ 7.
‘ \
100
2.3,17. Транспонирование квадратной матрицы с комплексными элементами
Транспонировать матрицу
I |
|
3 |
i L |
5 |
jG |
7 |
— |
T |
Решение. Исходная программа:
-01-
ТРАНСЛSTOP МЭИ-3
'BEQIK'
'PROCEDURE ’TKAi(SPCOMPb(A, !*)•> •VALUE*:*.,
'ARRAY'А.,
’iktegekX ,
"BEGIi**
*AleftAY*VV(/1 г2/).,
'integer *i,k.,
*fOR ’1:“1*БТЕР 'l ’UilTlL’H ’OO* 'F0R*K;°1+I*STEP 4'UUTIL*M’
DO’ |
I |
■ |
' |
’ |
’BEGIi*’ |
; |
|
|
|
V(/l/):-A(/I,K,l/).,; |
|
|
|
|
A(/I,K,1/);=A(/K,I,1;/)., |
|
, |
|
|
A(/i-,I,l/) :eVi(/l/)., |
|
|
|
|
Vi(/2/):“A(/l,K,2/). ,■ |
|
|
|
|
A(/IfKf2/):»A(/K,I,2/)., |
|
|
|
|
A (/К,1,2/):°V((/2/) |
|
|
|
|
’E:U’ ‘ |
|
|
|
|
’E '.D'TRA (fJPCOKFb., |
|
|
|
. |
IOI
TESTBi.OCK:
’b e g i n *
’i n t e g e r ’n ;, INPOT(l.N)., ’b e g i n ’
'ARRAY *A(/1|N,1:N, 1:2/)
INPDT(I.A).,..........
TRANSPCOMPL(A.N)., 00TPUT(8,’(E‘),A)
’e n d ’
'END’TE3TBL,OCK
’ENB’PflOGRAMMi,
Массив исходных данных;
t .
+1,0.
+0,0.
+0,0.
+2,0.
+3,0.
+ 0 ,0 ,
+0 ,0 .
+4,0.
+5,0.
+0 ,0 . +0 ,0 .
+6,0.
+7,0.
+0,0.
+0,0,
+8,0.
+9,0. +0,0.
•Результат вычислений, полученный на узкой печати, +1000000 +01
+0000000 +00
+0000000 +00
+4000000 +01
+6999999 +01
+0000000 +00
+0000GU0 +00 +2000000+01
+5000000 +01 .
+ 0000000+00
+0000000 +00
+80000С0 +01
+3000000 +01
+0000000 +00
+0000000 +00
+6000000 +01
+8999999 +01
+0000000 +00
соответствует ожидаемому.
2,3.18. Транспонирование п р я моугол ьной матриц с комплексными элементами
Произвести транспонирование матрицы
. I |
^ |
3 ~ У 2 |
|
I |
|
2 |
Я |
т |
~ - ~ р г |
|
|
|
|
Решение. Исходная программа:
-01-
ТРАНСЛЯТОР МЭИ-3
'b e g i h '
'PROCEDURE ’TRANS’C0MPL2(A,N,M ,AT)., 'VALOE’N.H.,.
'i n t e g e r'n .m ., 'ARRAY’А ,АТ<:, 'BEGIN'
'INTEGER
'FOR 'i:*1 'STEP ’i*UNTIL*N 'DO? "FOR'К:®!'STEP 'lTONTIUlM'OO
’b e g i n '
AT(/K,I,l/)s-A(/I,K,i/)i,
AT(/R,I,R/) V*A(/I,K,2/5
'END'
'END'TRANS’COMP L2i,
TESTBLOCKt
'BEGIN*
'iNTEGEk'N.Mi, lNPUT(l,N,M)., ‘BEGIN*
*ARRAY*A(/i!N,isM,lse/),AT(/i:M,liN,1:2/).,
lNPtJT(l,A)i', ‘ .................
TRAN3>C0MPL2(A,N,M,AT);,
OUTPUT (8,*(E'),AT)
'END*
'END'TBSTBLOTC
'IMP'PROGRAMM;,
Маосив исходных данных:
+2. +3.
104
+1,0.
+4,0.
+3,0. -2,0. +1,0. +0,0. +2,0. +0,0. +0,0. +2,0.
+3,0. . -4,С.
Результаты вычислений, полученные на узкой печати, +1000000 +01 +4000000 +01
+2000000 +01
+0000000 +00.
+3C0C000 +01 -2000000 +01
+0000000 +00
+2000000 +01
+1000000 +01
+0000000 +00
+3000000 +01 -4000000 +01
соответствуют ожидаемый.
2.3.19. Умножение двухмерной матрицы с действи тельными элементами на одномерную натгину с комплек
сными элементами Произвести умножение матрицы А на матрицу В.
105
4 |
0 |
. I |
I |
0 |
3 |
I |
в = г |
4- |
2 |
I |
Т Т р Т Т |
Решение. Исходная |
программа: |
|
-01-
ТРАНСЛЯТОР МЭИ-S
'BEG1H'
'PROCEDURE *MATMUCi(A,B,N,M,C)», *VALUE *NtM.,
'array 'a ,b ,c ., 'INTEGER 'BEGIN*
'i n t e q e r'i ,J,, ’FOR*Is-l'STEP *1'UNTIL'N*DO* 'begin’
C(/I,1/)j-C(/I,2/)j-0.0.,
'e o r 'j :«i'step *1 'u n t i l 'm 'd o '
'beg in’
C(/I,1/)i-C(/I,1/)+A(/I,J/)IB(/J,1/);,
С(/1,е/):-с(/1,2/)^А(/1,1/)ХВ(/1»2/)
'END'
'END*
'e n d 'm a t m u c t .,
TESTBLOCK:
'b e g i n ' "
*1NTEGER'N,M. ,
INPUT(1,N,M);;,
BEGII "
'AiiftAY'/.(/1:4,1 :М/),B,C(/1:M,1:2/),, I;fPUT(l,A,B)., ' '
MATMUCi(A,В,:t,MFC).,
OUTPUT(S,'(E*),C) *e u o *
'Eyi/TEiiTBuOCK
’ErtO'PKOGHAMM.,
Массив исходных данных:
+3;
+3.
+*f,0.
+0,0.
+1,0.
+0,0.
+3,0.
+1,0. +A .0:. +2,0v +1,0.
+1,0.
+0,0.
+2,0,
+0,0. T-'t,0. +2,1.
Результаты вычислений, полученные на узкой печати, +8000000 +01 +2099999 +01
+1000000 +02
+2099999 +01
107