Файл: Гемст В.К. Процедуры АЛГОЛ-60 в примерах [практикум].pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 27.07.2024
Просмотров: 118
Скачиваний: 2
Результаты вычислений, полученные на узкой печати, +1773000 +02 +2140000 +02
-I690000 +02
соответствуют ожидаемым.
2.3.12. Произведение двухмерных матоип Произвести перемножение двухмерных матриц А и В.
+ 2 |
|
|
|
. I L L |
I1 |
Q |
i\a |
-2*1 +43 |
|
Решение. Исходная
I |
В = |
-I |
1 T ~ |
+*.2 |
|
+2 |
-4,4 |
-41 |
|||
|
|
программа:
- 01-
ТРАНСЛЯТОР МЭИ-3
"BEGIN *
'PR0CEDURE*MATMU2(A,B,N,M,R,C).,
"VALUE *.Ч,М,К., |
|
"li!TEGEk*:i,M,R., |
j |
"ARRAY "А,В,С., |
! |
"BEGIN" |
; |
|
> |
"ihteger’i ,JfK,, |
I |
"FOR*I i "STEP *1"UNTIL % ’DO**FOR*Л:»1"STEP *1 "until ;R *DO
"b e g i n "
I c(/I,J/):»0.0.f ;
"FOR *Kt»i*STEP "i"UNTIL "N *DO’C(/I,J/):"C(/I,J/)+A(/I,
K/)XB(/KtJ/)
"END* . |
, |
• 1
• *E,4D"MATMU2.,
TESTBLOCKl
'всей*
‘lMTBdee*N,14,R., INPOT(i,H,H,R).f *BBQIN*
IHP0T(1,A,B)«,
o u T m ( 8 , ’(B*),c) •BHD*
•B«D'TE8fBbOCtt
'EHi)*paoeaAMMi,
Массив исходных данных:
+2.
+3.
+3.
+2,0.
-3,4.
+5,1.
- 0,2.
- 2 ,1.
+43,0.
-1,0.
+2,0.
+3,2.
+2,0.
ее
/
Результаты вычислений, полученные на узкой печати, -6800000 +01 +1896000 +02 +2034000 +02
-5500000 +01 +II07999 +02 +1714000 +02
+8810000 +02 ' -1933999 +03 -1830200 +03
соответствуют ожидаемым.
2,3,13. Транспонирование квадратной матрицы Произвести транспонирование квадратней матрицы А.
+1,0 +2,0 .+3,0
+4,0 +5,0 +6,0
+7,0 +8,0 +9,0
Решение. Исходная программа:
- 01-
ТРАНСЛЯТОР мэи-з
*BEGl;-i
‘PROCEDURE "TKA.UPOHATI0iU(A,M).,
’VALUE 'М.,
'imt e g e r'm .,
'arhay'a .,
‘b e g ih *
REAb Vt,,
* INTEGER
'FOR'l t-i'STEP V U N T I L ,u’op*,FOR’K:-l+I 'STOP Ч.'ОЛГЬЛй*
DO* |
................... |
'BEGIN* |
|
Ki-A(/I,K/),, |
|
A(/I,K/):»A(/K,I/)., |
|
A(/K,I/):-W |
|
'END* |
|
"EUU'TRANCPO.'lATIONi,, |
|
TESTBLOCK: |
|
'BEGIN' |
|
’INTEGER'N,, |
' |
I,(PUT(i, N)., |
|
' b e g in *
'a r r a y 'A(/lIN,1:N/)., 1MPUT(1,A)., TltANU>OUATIC,li(A,.4).,
0UTPUT(3,'(E *),A) 'END'
'E'll)'TEl.TBbOCK
'END’PkOGRAMM.,
Массив исходных данных:
+3.
+1 ,0.
+ 2, 0. |
|
|
+3,0. |
* |
|
+4,0. |
|
|
+5,0. |
|
\ |
+6,0. |
' |
. . |
90
+?,о». +8t0'i...
+9,0.
ввявсдвяий, , получениве-■ьа^'узкой- печати, +1000000 +01;!
+4000000 +GI,
+6999999 +0ГГ
+2000000,+61.:
+5000000.+01, +6000000' ‘+0Г
соответствуют?; озшдаешнч-
2.3..I4. Транспонирование прямоугольной матрицы Произвести транспонирование прямоугольной матрицы А.
+1 |
+2 |
+3 |
-4 |
-5 |
~6 |
Решение. Исходная программа:
- 01-
ТРАНСЛЯТОР МЭЙ-8
‘BEGM*
’Procedure *TRAi49P0:iATi0f<2(A,NtM ,а т );,
*VAiiUE *n ,m «, |
, |
’i.4Te q e r ‘n ,m .,
‘ARRAY’A,AT.,
‘BEGIrt*
‘reali'w .,
‘iMTEGER’l.Ki,
*roR‘is»i*sTEP V u n t i u V do “ f o r ‘Kt«i‘step *1 *ити;м,too
’AT(/K,1/):-a (/I,K/)
’EMD‘TRAUSP0HATI0N2.,
91
TESTBOOCK: |
• |
‘BEGIN’ |
|
*I,"TEGEk *H,M., INPUT(1,N,M)., ‘BEGIN' .
'AkRAY*A(/i:Nfl:M/) ,AT(/i:Mtl:N/) MPUT(i.A).,
TkANKP0HATI0N2(A,N,M ,AT).,
OUTPUT (3,*(E‘),AT)
’end'
‘end’testblock
‘END'PkOGRAMM.,
Массив исходных данных:
+2.
+3.
+1 ,0.
+ 2 , 0 .
+3,0. -4,0.
-5,0.
- 6 , 0.
Результаты вычислений, полученные на узкой печати
+ICOOOOO +01
. -4000000 +01
+2000000 +01
-5000000 +01
+3000000 +01 -6000000 +01
соответствуют ожидаемым.
92
2.3.15, Обращение матрицы методом ГауссаЖордана (первый вариант)
Произвести обращение квадратной матрицы А.
+1 |
+2 |
+3 |
+ z |
+4 |
+5 |
+3 |
+5 |
+6 |
Решение. .Исходна? .программа:
-01-.
т р а н с л я т о р мэи-г
BEGIH
'РНОСЕJURE ’INVEКТБ8( Н.BPS) НАТ^адаиьТ:(A)BESUbT s( Ш ).
"VAbUE *;(,ЕРУ., |
|
|
’НЕАь 'EP.J.DET., |
|
|
'iHTEGEK'il., |
. |
|
’a r r a y ’а ., |
|
|
'BEG! |
|
|
’REAb’Y.W., |
|
|
’IMTEGEk ’I,J,K,R,P., |
! |
|
'ARRAY *B,C(/1 :il/)., |
i |
|
! |
*INTEGER *'ARRAY *2(/l s l/)., JET :»1.0.,
’E0r ’J:»1*STEP’1'U lTlp';j*J0'2(/J/) :»J., 'f o r 'Is=i*STFP 'l’UJTIu'M* JO '
'BEGI,Г
к:®1-1., F :«1-ь1..
TfOB*J J»p*STEP*i’UNTIL *N*D0*
•begin’'
W:*a (/M/).,
•fr*ABS (W)*GT*ABS(y):THEN* ’b e g i n * "
Yl“W
’END*-
.’END*.,
DET:-YXDET.,
‘lF*'!0“/I*ThEN'DET:»-DET.,
*i p *abs (Y)'l t 'eps *t b e n :s t o p (7).,
Vl-i/Y., -
or*j;■i*step*i'until*n *do'
■BEGIN*'
C(/j/)*»A(/J,K/)i,
A(/J
a (/j ,i/J>-c (/j/)Iy .,
B(/J/)j-A(/I,J/):-A(/I,J/)iy 'END*.,
*>!»Z(/I/).,
Zf/I/) j*2(/K/),,
2(/K/JY*J., -
A(/I,i/) i=Yi,
*POR*K 1-TsTEP' i'UNTlL'R.P'STEPi' i'UNTIL'*N?D(>T IPORtj j
-i'STEf>'*i*0NTIL*R,P'sTEP'l'UNTIL'N*DO'A(/K,j/Ji-A{/fC »^/)“B(/J/)XC(/k/)
’FOK'Rj-i'STEP'l'UNTIbVDO?
'beg in"
Ks-Zt/R/),,
'f o r 'Jj»R'while 'iw/j 'd o *
’begin"
'FOR* IJ"l'STEP’l’{JNTIb’N*DO
’BEGIN"
W S-A(/j,I/)f,
Af/J,i/) :“A(/K,I/);,
A(/K,I/J:-W
’e n d ’i ., Is-Z(/K/)i,
к j*z(/5/) j»i
*ENi)"j |
|
~ № - |
j |
'END'S |
■ j |
’END'iNVEkTca*., |
; |
"ESTBLOCKi |
j |
’BEGIN* " |
! . |
’INTEGER*N., |
• |
’REAb’EPN.DET., |
|
INPtJT(1;N,EPS). , |
* .• |
’ B E G IN ’ |
|
*AekA¥*A(/ilM*ll:N/)., '
|
|
шита ,*) . , ~ - |
i |
|
lHVGM68(N,EPStA,I)ET)., |
| . |
• |
OUTPOT(3,*(E*),DET,Ajf |
|
|
lE.'iD’ |
Te m o ’testblock tENB’PKOORAMMi,
Массив исходных данных:
+3.
+1000000 46,
+1 ,0.
+2,0.
+3,0.
+2 ,0.
+4,0.
+5,0.
+3,0.
+5,0.
+ 6 , 0 .
Результаты вычислений, полученные на узкой печати
-9999999 +00
|
|
+1000000 |
+01 |
1 |
|
-3000000 |
+01 |
' |
+2000000 +01 |
-3000000 +GI
'; +3000000 +01
-1000000 +01
+2000000 +01
-1000000 +01
+0000000 +00
ооответотвуют ожидаемым.
96