Предмет: Информатика,
автор: Pro190
помогите найти ошибку в программе.....
умножение двумерного массива.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.
ЗАРАНЕЕ СПАСИБО!!!
read(a[i, j]);
writeln;
end;
end;
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.
Ответы
Автор ответа:
0
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.
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.
Похожие вопросы
Предмет: Английский язык,
автор: west21
Предмет: Русский язык,
автор: solomatin324
Предмет: Английский язык,
автор: ket851230
Предмет: Математика,
автор: lavrenov2103
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