ahmad6
06-01-2009, 17:22
سلام دوستان من دارم یه برنامه جمع دو ماتریس رو در پاسکال مینویسم نمیدونم کجاش اشتباه یه کمکی کنید مرسی
uses wincrt;
const
d=50;
type
matrix= array [1..d,1..d] of real;
var
x,y,z:matrix;
rx,cx,ry,cy,rz,cz:integer;
procedure add(x,y:matrix; var z:matrix; m,n:integer);
var
i,j:integer;
begin
for i:=1 to m do
for j:=1 to n do
z[i,j]:=x[i,j]+y[i,j];
end;
procedure printmatrix(x,y:matrix; var z:matrix; m,n:integer);
var
i,j:integer;
begin
for i:=1 to m do
for j:=1 to n do
write(z[i,j]:8);
writeln;
end;
begin
writeln('satr aval ro vared konid');
readln (rx,cx);
writeln('satro soton dovom');
readln (ry,cy);
if (rx=ry) and (cx=cy) then
begin
add (x,y,z,rx,cx);
rz:=rx;
cz:=cx;
writeln('hasel jame');
printmatrix(z,rz,cz);
end
else
writeln('error');
end.
uses wincrt;
const
d=50;
type
matrix= array [1..d,1..d] of real;
var
x,y,z:matrix;
rx,cx,ry,cy,rz,cz:integer;
procedure add(x,y:matrix; var z:matrix; m,n:integer);
var
i,j:integer;
begin
for i:=1 to m do
for j:=1 to n do
z[i,j]:=x[i,j]+y[i,j];
end;
procedure printmatrix(x,y:matrix; var z:matrix; m,n:integer);
var
i,j:integer;
begin
for i:=1 to m do
for j:=1 to n do
write(z[i,j]:8);
writeln;
end;
begin
writeln('satr aval ro vared konid');
readln (rx,cx);
writeln('satro soton dovom');
readln (ry,cy);
if (rx=ry) and (cx=cy) then
begin
add (x,y,z,rx,cx);
rz:=rx;
cz:=cx;
writeln('hasel jame');
printmatrix(z,rz,cz);
end
else
writeln('error');
end.