thieumao

Sử dụng chương trình con tính tổng, tích 2 ma trận

Apr 6th, 2013
294
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.43 KB | None | 0 0
  1. uses crt;
  2. type mang=array[1..10,1..10] of integer;
  3. var
  4.   a,b,s,p: mang;
  5.   ha,ca,hb,cb,hp,cp: integer;
  6. procedure nhap(var m: mang; var h,c: integer; ch: char);
  7. var i,j: integer;
  8. begin
  9.   writeln('Nhap ma tran ',ch);
  10.   write('  So hang: '); readln(h);
  11.   write('  So cot : '); readln(c);
  12.   for i:=1 to h do
  13.     for j:=1 to c do
  14.       begin
  15.         write(ch,'[' ,i, ',' ,j, ']= ');
  16.         readln(m[i,j]);
  17.       end;
  18. end;
  19. procedure xuat(m:mang; h,c:integer; ch:char);
  20. var i,j:integer;
  21. begin
  22.   writeln('Ma tran ',ch);
  23.   for i:=1 to h do
  24.     begin
  25.       for j:=1 to c do write(m[i,j]:3);
  26.       writeln;
  27.     end;
  28. end;
  29. procedure tong(var a,b,t: mang; var h,c:integer);
  30. var i,j:integer;
  31. begin
  32.   for i:=1 to h do
  33.     for j:=1 to c do
  34.       t[i,j]:= a[i,j]+b[i,j];
  35. end;
  36. procedure tich(var a,b,p: mang; var h,t,c: integer);
  37. var i,j,k: integer;
  38. begin
  39.   for i:=1 to h do
  40.     for j:=1 to c do
  41.       begin
  42.         p[i,j]:=0;
  43.         for k:=1 to t do p[i,j]:=p[i,j]+a[i,k]*b[k,j];
  44.       end;
  45. end;
  46. begin
  47.   clrscr;
  48.   nhap(a,ha,ca,'a');
  49.   nhap(b,hb,cb,'b');
  50.   xuat(a,ha,ca,'a');
  51.   xuat(b,hb,cb,'b');
  52.   if (ha=hb) and (ca=cb) then
  53.     begin
  54.       tong(a,b,s,ha,ca);
  55.       xuat(s,ha,ca,'s');
  56.     end
  57.   else
  58.     writeln('Khong the tinh tong 2 ma tran a va b');
  59.   if (ca=hb) then
  60.     begin
  61.       tich(a,b,p,ha,ca,cb);
  62.       xuat(p,ha,cb,'p');
  63.     end
  64.   else
  65.     writeln('Khong the tinh tich 2 ma tran a va b');
  66.   readln;
  67. end.
Advertisement
Add Comment
Please, Sign In to add comment