Показать сообщение отдельно
Старый 08.12.2010, 17:18   #1 (permalink)
dimastyi
Новичок
 
Регистрация: 08.12.2010
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
Smile Паскаль. Отладка программы.

ПОМОГИТЕ
программа вроде счиатет, но преподаватель говорит не правильно. якобы необходимо накопление суммы.
Условие A[i,j]*B[j,k]+A[i,j]*C[j,k]

Program laba3;
uses crt;
Const m=3;n=4;p=5;
Var A:array [1..m,1..n] of integer;
B:array [1..n,1..p] of integer;
C,AC,AB,R:array [1..m,1..p] of integer;
i,j,k:integer;
begin
clrscr;
writeln('matrica A');
for i:=1 to m do
for j:=1 to n do
begin
write ('A[',i,',',j,']=');
readln (A[i,j]);
end;
writeln('matrica B');
for j:=1 to n do
for k:=1 to p do
begin
write ('B[',j,',',k,']=');
readln (B[j,k]);
end;
writeln('Matrica C');
for j:=1 to n do
for k:=1 to p do
begin
write ('C[',j,',',k,']=');
readln (C[j,k]);
end;
CLRSCR;
writeln('ishodnaya matrica A');
for i:=1 to m do
BEGIN
for j:=1 to n do
WRITE(A[i,j]:3);
WRITELN;
end;
readln;
writeln('ishodnaya matrica B');
for j:=1 to n do
BEGIN
for k:=1 to p do
WRITE(B[j,k]:3);
WRITELN;
end;
readln;
writeln('ishodnaya matrica C');
for j:=1 to n do
BEGIN
for k:=1 to p do
WRITE(c[i,j]:3);
WRITELN;
end;
readln;
writeln('martica A[i,j]*B[j,k]');
for i:=1 to m do
for j:=1 to n do
for k:=1 to p do
begin
AB[i,j]:=A[i,j]*B[j,k];
end;

for i:=1 to m do
BEGIN
for j:=1 to n do
WRITE(AB[i,j]:3);
WRITELN;
end;

writeln('matrica A[i,j]*C[j,k]');
for k:=1 to p do
for i:=1 to m do
for j:=1 to n do

begin
AC[i,j]:=A[i,j]*C[j,k];
end;
for i:=1 to m do
BEGIN
for j:=1 to n do
WRITE (AC[i,j]:5);
WRITELN;
end;
writeln('rezult matrica');

for i:=1 to m do
begin
for j:=1 to n do
begin
R[i,j]:=AB[i,j]+AC[i,j];
write(R[i,j]:3);
end;
writeln;
end;
readln;
end.
dimastyi вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070