Anonymní profil majus85 – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil majus85 – Programujte.comAnonymní profil majus85 – Programujte.com

 

Příspěvky odeslané z IP adresy 193.87.171.–

majus85
Pascal › Súčin dvoch matíc
8. 10. 2014   #194708

Prosím o pomoc....napísala som program pre vynásobenie dvoch matíc, ktorý sa spustí ale po prvej procedúre sa vypne a nepokračuje. Rozmýšľam nad tým už 2 dni a neviem nájsť chybu. Veľmi pekne ďakujem za odpovede.

program Nasobenie;
uses crt;
const q=10;
type pole=array [1..q,1..q] of integer;
var a,b,c: pole;
i,j,p,k,l,m,n: integer;

procedure MENU(k,l,m,n: integer);
begin
writeln('==========Nasobenie matic==========');
writeln('Pocet stlpcov prvej matice sa musi rovnat poctu riadkov druhej matice!');
writeln;
write('    1. matica - pocet riadkov: ');
readln(k);
write('    1. matica - pocet stlpcov: ');
readln(l);
writeln;
write('    2. matica - pocet riadkov: ');
readln(m);
if m<>l then writeln('Neda sa vypocitat!')
else begin
write('    2. matica - pocet stlpcov: ');
readln(n);
end;
writeln;
end;

procedure VYPIS(i,j,p,k,l,n: integer; a,b: pole);
begin
for i:= 1 to k do
 for j:= 1 to l do
 begin
 write('1. matica - prvok ',i,',',j,': ');
 readln(a[i,j]);
 end;
writeln;
for j:= 1 to l do
 for p:= 1 to n do
 begin
 write('2. matica - prvok ',j,',',p,': ');
 readln(b[j,p]);
 end;
end;

procedure SUCIN(i,j,p,k,l,n: integer; a,b,c: pole);
begin
for i:=1 to k do
 for j:=1 to l do
 begin
 c[i,j]:=0;
 for p:=1 to n do
 c[i,j]:=c[i,j]+a[i,p]*b[p,j];
 end;
for i:=1 to k do
begin
 for p:=1 to n do
 begin
 write(c[i,p]);
 end;
writeln;
end;
end;

begin
clrscr;
MENU(k,l,m,n);
VYPIS(k,l,m,i,j,p,a,b);
SUCIN(k,l,m,i,j,p,a,b,c);
readln;
end.

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý