Автор: Лёха 18.02.2009 1:42
У меня в четверг экзамен, не поможете.
Нужно перемножить матрицы А*B=C
Я нашёл перемножение квадратных матриц, а мне надо произвольных. Знаю что надо условие кол-во строк матрицы А должно быть равно кол-ву строк матрицы B.
Код
var
ResMat1 : array[1..n, 1..m];
ResMat2 : array[1..m, 1..k];
i, x, y, R : integer;
flag : boolean;
begin
Writeln('Ввод первой матрицы (целые числа)');
for y := 1 to Count do
for x := 1 to Count do
begin
Write('Mat1[', x, ',', y,'] : ');
Readln(Mat1[x, y]);
end;
Writeln('Ввод второй матрицы (целые числа)');
for y := 1 to Count do
for x := 1 to Count do
begin
Write('Mat2[', x, ',', y,'] : ');
Readln(Mat2[x, y]);
end;
for y := 1 to count do
for x := 1 to Count do
begin
R := 0;
for i := 1 to Count do
r := R + mat1[i, y]*Mat2[x, i];
ResMat1[x, y] := R;
end;
Writeln('AxB=');
for y := 1 to Count do
begin
for x := 1 to Count do
Write(ResMat1[x, y]:4);
Writeln;
end;
END.
Честно паскаля дома нет, мучаюсь. А прогу попытался восстановить с лекций. Помогите плз. А лучше поясните где ошибки.
Автор: volvo 18.02.2009 2:10
Цитата
Я нашёл перемножение квадратных матриц, а мне надо произвольных.
Там же, где ты нашел перемножение квадратных матриц, есть перемножение сцепленных...
Цитата
Честно паскаля дома нет, мучаюсь
Чего мучаешься? Скачай и работай... Или тебе удобнее, чтобы все ошибки исправили, а ты только пойдешь и сдашь?
Автор: Лёха 18.02.2009 2:41
Цитата
Там же, где ты нашел перемножение квадратных матриц, есть перемножение сцепленных...
Не внимателен, сори. Тему в топку