PDA

View Full Version : sửa giúp em bài pascal này với



gameonline
11-01-2008, 10:59
program bt;
uses crt;
type matran=array[1..20,1..20] of integer;
mang=array[1..20,1..20] of integer;
var a,b:matran;
c:mang;
n:integer;
procedure nhap(var a:matran;n:integer);
var i,j:integer;
begin
for i:=1 to n do
begin
for j:=1 to n do
begin
write('nhap a[',i,',',j,']=');
readln(a[i,j]);
end;
end; end;
procedure hienthi(var c:mang;n:integer);
var i,j:integer;
begin
for i:=1 to n do
begin
for j:=1 to n do
writeln(c[i,j]:5);
writeln;
end;
end;
procedure tichmt( a,b:matran ;n:integer);
var
i,j,k:integer;
c:mang;
begin
for i:=1 to n do
begin
for j:=1 to n do
c[i,j]:=0;
for k:=1 to n do
begin
c[i,j]:=c[i,j] +a[i,k]*b[k,j];
end;
write('tich hai matran la:');
hienthi(c,n);
end; end;
begin
clrscr;
write('nhap n=');readln(n);
writeln('nhap matran a');
nhap(a,n);
writeln('nhap matran b=');
nhap(b,n);
tichmt(a,b,n);
write('tich hai matran la:');
hienthi(c,n);
readln;
end.
gup minh voi.đề bài:nhập hai ma trận tính tich hai ma trận đó.ma minh la như trên nhunh no ko cho kết quả . sửa lai ho mình,cảm ơn+
h

m2mpro
11-01-2008, 11:38
Bạn nên code sao cho người đọc dễ theo dõi ( tức thục ra thục dô ), dễ sửa lỗi...

tranvanho
11-01-2008, 12:45
nên code theo cách vừa debug vừa chú thích

mr_invincible
12-01-2008, 11:18
Lạ quá, ý của bạn là bài của bạn không hiện kết quả mà trở về màn hình soạn thảo (màu xanh) hay nó rơi vào vòng lặp vô tận nên cứ đen mãi?

gameonline
12-01-2008, 15:04
không phải.bài tớ có hiện kết quả nhưng không theo ý muốn.Nghĩa là kết quả in ra không đúng và cách in ra kết quả cũng không đúng,
các bạn thử cóppy lại và chạy thử xem
mà các bạn chỉ tôi cách làm các đoạn code chương trình với

gameonline
12-01-2008, 15:23
đây là bài chương trình nhân 2 ma trận.tôi đã làm nhưng không hiểu sao chương trình chạy sai,thuật toán thì làm như các bạn trong diễn dan da noi