Файл: Гемст В.К. Процедуры АЛГОЛ-60 в примерах [практикум].pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 27.07.2024
Просмотров: 119
Скачиваний: 2
+1200000 +02
+2099999 +01
соответствуют ожидаемым.
2.3.20, |
|
Произведение двухмерной матрицы • |
|||
с действите~ьными элементами ;.а двухмерную матрицу |
|||||
|
|
с комплексными элементами |
|
|
|
Произвести перемножение матриц А и В. |
|
|
|||
k |
0 |
I |
|
0 |
Я |
0 |
3 |
I |
В = |
I |
~ r |
4 |
2 |
I |
4 |
|
0 |
Решение. |
Исходная |
программа: |
|
|
-01-
ТРАНСЛЯТОР МЭИ-3
’b e g i n ’
'PROcrDURE 'МАТМ0С2(А,В,N,М,R,С):,
"VALUE’m .M.R.,
’i n t e g e r ’n .m .r ;,
’ARRAY’А,В,С.,
’b e g i n ’
’InTEGER’I,J,K.,
’FOR’I |
1’STEP’1’UNTIL’M ’DO ” rOR’j |
1’STEPTi TONTIL'IR-Г00 |
|
Ф |
t- |
|
. |
’BEGIN’
c(/i,j,i/):-c(/i,j,e/)s-o.Oi,
'FOR *Ki-1’STEP ’1’UNTIL’H’DO’ ’be g i n’
C(/IfJ,l/) :«C(/I,J,l/)+A(/I,K/)IB(/K,J,l/)i,
108
C(/I,J,2/rs-C(/I,J,2/j+A(/I,K/jXB(/M.»/J 'END* " '
’END’
'END'MATMUCai,
TESTBLOCKt
’BEGIN’
'INTEGER*N»M,Ki,
INPUT(i,N,MtR);,
•b e g i n *
'ARRAY*A(/i:N,i:M/),B(/i:N,i:8fi:2/),C(/ltN,i:R,l»2/
•- ........ ' ........
iNPUT(ltA,B).,
MATMUC2(A,В,N,M,R,C)i,
ODTFUT(B,*(E'),C) " ’
"END* |
|
•END’TESTBLOCK |
|
'END’PROGRAHMi, |
j |
|
|
Массив исходных данных:: |
| |
|
+3j |
+3 ; +2.;
+4,0..
+0,0, +1,0). +0,0» +з,оо
-i,o. +4,0. \ +2,0. +1,0.
109
+0,0.
+0,0.
+0,0,
+2,0.
.•1,0.
+0,0,
+1,0.
+0,0,
+4,0.
+3,0, +о,о. +0,0.
Результаты вычислений, полученные на узкой печати, +4000000 +01 +3000000 +01
+0000000 +00
+8000000 +01
+6999999 +01
+3000000 +01
+3000000 +01
+0000000 +00
+6000000 +01
+3000000 +01
+2000000 +01
+8000000 +01
соответствуют ожидаемым.
2.3.21.Произведение двухмерной матрицы
окомплексными элементами на двухмерную матрицу с действительными элементами
Произвести перемножение матриц Л и В.
Н О
I + |
j 2 |
0 |
n r |
0 |
t |
X |
|||||
1 1 ___ |
I |
0 ; |
В = i |
0 |
|
44 + |
4 21 |
2 |
|
0 |
i |
Решение. Исходная программа:
-01-
ТРАВСЛЯТОР МЭИ-3
'BEGIN*
'PROCEDURE'MATM0C3(A,B,M,M,R,С);,
'VAbUE'H.M.R;,
*INTEGER*N,M,K.,
'ARRAY *A,B,C.t
'BEGIN'
*lNTEGER*I,J,K.,
'FOR *1:-l*STEP 'l’UNTIL *M'DO’'FOR 'jl-l!STEP *1ТОНТЩТ*,} DO
'BEGIN*
C(/IfJ tl/)s-C(/I,jts/):-o.Oi,
'FOR*K:»1 'STEP'l'UNTiii'N *D0 *
'BEGIN' !
c(/i,j,i/):»c(/i,j,i/)+A(/i,K,i/)iB(/Ktj/);,
C(/ItJ,8/j':"C(/I,J,2/)+A(/I,K,2/JlB(/K,j/J
'END* — '
'END'
*END'MATMUC3i, •-
TESTBLOCK:
'BEGIN' '•
* INTEGER’ N,M,Ri,
III
INPUT(i,M,M,R)‘i,
'BBdlN*
>WUY:A(/l:Mfi,M.i,B/)fB(/i:Nti;B/),C(/irtiiieilljl
)i. |
- |
- - |
- - |
iNPUT(i,A ,B).t MATMUC3(A,B,N,M,R,C)i, OUTPOT(3, ’(E*),C) '
■BNA* - - ’B W ’TESfBLOCK
■BND’I>RO0RAMH;,
Массив |
исходных данных: |
|
+3. |
|
+3. |
|
+2. |
|
+1,0. |
|
+2,0. |
|
+0,0. |
|
+0,0. |
|
+1,0. |
|
+0,0. |
|
+0,0. |
|
+1,0. |
|
+1,0. |
|
+0,0. |
|
+0,0. |
|
+0,0, |
|
+44,0. |
о |
+21,0. |
' |
+2 ,0. |
|
+ 0, 0. |
|
+ 0 ,0 , |
112 |
“ |
. |
+2,0.
+0,0.
+1,0.
+1,0.
+0,0.
+0,0. +3,0,
Результаты вычислений, полученные на узкой печати, +0000000 +0ъ
+0000000 +00
+4000000 +01
+2000000 +01
+1000000 +01
+0000000 +00
+0000000 +00
+ICD0000 +0J
+2000000 +01
+0000000 +00 .
+4400000 +02
+2700000 +02
соответствуют ожидаемым.
2.3,22. Произведение двухмерной матрицы
скомплексными элементами на одномерную также
скомплексными элементами
Произвести перемножение двух матриц А и В.
) 2 |
I + |
j |
I |
I |
|
|
) 2 |
0 |
|
|
|
I + |
f I |
В = |
I |
2 |
Т + |
j |
|
|
T T j T |
||
4 |
I |
|
|
Решение. Исходная программа:
-01- |
• |
ТРАНСЛЯТОР МЭИ-3 |
|
'b e g i n '
'PROCEDUKE ’MATMUC4(A,В,Н,М,С) 'VALUE'н,М.,
'a r r a y 'a .b .c ., 'INTEGER 'N.M., 'BEGIN*
'INTEGER'!,;!.,
'FOR ’Is=1’СТЕР'1'UNTIL'H *1)0’
’BEGIN" ■ '
С(/1,1/):-С(/1,2/):-0.0.,
'f o r 'j :«1 'STEP *1'UNTIL 'n.'DO* ’begin"
C(/I,l/);=C(7l,i7)+A(/l,.M/)XB(/J,l/)-A(/I,Jt2/)
. "B(/J,2/)»,
C(/I,2/)»»C(/I,2/) +A(/I,J ,1/)XB(/J ,2/) +A(/I,J,2/) 2B(/J,l/>
'END*
'END*
'end 'МАТмисч., TESTBLOCK: 'BEGIN* "
'IMTEGEk 'n .M., I:iPUT(l,N,M).f 'BEGIN' ■
'ARRAY *A(/UM,1:4*1:2/),B(/l:N,l:2/),C(/l:M,1:2/).,
114
lNPUT(i,A,B)i,
MATMUC4(A,B,N,M,C)i,
OUTPUT(3,*(E*),C)' 'END* ~ '
iENB’TESTBLOCK
•ENfl'PBOOBAMM;,
Массив исходных данных:
+ 3. +3.
+0,0.
+2,0.
+1,0.
+1,0.
+ 1, 0.
+0,0.
+0,0.
+0,0.
+0,0.
+3,0.
+1,0.
+1,0.
+2,0.
+0,0,
+1,0.
+4,0.
+1,0.
+0,0,
+0,0.
+2,0.
+1 ,0.
+ 0 , 0 .
115
. +i,o., +2,0.
Результаты вычислений, полученные на узкой печати,
-2000000 +01
+3000000+01
-1000000 +01 +6000000 +01
+2000000 +CI
+1000000 +02
соответствуют ожидаемым.
2,5.23, Перемножение двух прямоугольных матриц
с комплексными элементами Произвести перемножение двух матриц А и В.
4 |
0 |
|
|
0 |
4 + j I |
|
jI |
« |
2 + j2 |
1—1 |
|||
2 +jl |
I |
|||||
^ + j i |
| |
|
2 + ^ 1 |
|||
|
|
|
|
|
Решение. Исходная программа:
-01-
ТРАНСЛЯТОР МЭИ-S
*BEGIW'
’PROCEDURE "MATMUC6(A,BtN,M,R,C);,
•VALUE
*INTEGER*N,M,R,,
•array fA,В,С.,
•BEGIN’
’int e g e r’i ,j ,k ;,
"FOR*! :»i ’STEP *1’UNTIL *м*D0 ’*F0R*J j-1*STEP ’lTUHfIL.TkjDO
’BEGIN’
116