Помогите найти ошибку в программе..... умножение двумерного массива.pas(29) : Нельзя преобразовать тип integer к array [1..100] of array [1..100] of integer. Вот сама программа: умножение матриц в обратном порядке, т.е первый э...

Помогите найти ошибку в программе..... умножение двумерного массива.pas(29) : Нельзя преобразовать тип integer к array [1..100] of array [1..100] of integer. Вот сама программа: умножение матриц в обратном порядке, т.е первый элемент на последний, второй на предпоследний и.т.д. var x:integer; a1:array[1..100,1..100] of integer;a2:array[1..100,1..100] of integer;a3:array[1..100,1..100] of integer; i,j,m,n:integer; begin writeln('Введите размер матрицы'); readln(m,n); for i:=1 to m do begin for j:=1 to n do end; begin writeln('Введите элементы первой матрицы'); for i:=1 to m do begin for j:=1 to n do readln(a1[i,j]); end; end; begin writeln('Введите элементы второй матрицы'); for i:=1 to m do begin for j:=1 to n do readln(a2[i,j]); end; end; begin a3:=a1[i,j]*a2[x+1-i,x+1-j]; for i:=1 to m do begin for j:=1 to n do readln(a3[i,j]); end; writeln; end; readln; end. ЗАРАНЕЕ СПАСИБО!!!
Гость
Ответ(ы) на вопрос:
Гость
const handsfree = true; type mas100_100 = array[1..100, 1..100] of integer; var a1, a2, a3: mas100_100; i, j, m, n: integer; procedure InitializeMatrix(var a: mas100_100; m, n: integer); var i, j: integer; begin writeln('Данные матрицы'); for i := 1 to m do  begin for j := 1 to n do if handsfree then begin a[i, j] := random(30); write(a[i, j]:2, ' ') end else read(a[i, j]); writeln; end; end; begin writeln('Введите размер матриц'); readln(m, n); InitializeMatrix(a1, m, n); InitializeMatrix(a2, m, n); writeln('Вывод результата'); for i := 1 to m do  begin for j := 1 to n do  begin a3[i, j] := a1[i, j] * a2[m + 1 - i, n + 1 - j]; write(a3[i, j], ' '); end; writeln; end; readln; end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы