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

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

 

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

Honza
Pascal › Matice v pascalu
24. 2. 2014   #187656

#4 KIIV
děkují

Honza
Pascal › Matice v pascalu
24. 2. 2014   #187654

a můžete mi napsat jak by vypadaly parametry proměnný tý procedury? abych se mohl od něčeho odpíchnout

Honza
Pascal › Matice v pascalu
24. 2. 2014   #187650

Zdravím :) já bych potřeboval pomoct, vytvořil jsem program, který vypočítá matice a mým úkolem je snížit počet podprogramů na 3, takže výpisy bych potřeboval snížit do 1 pprg a v tom je ten háček, protože jsem nepřišel zatím na nic, co by fungovalo, nápady? budu vděčný :D

program maticka(input,output);
uses crt;
type matice=array[1..10,1..10] of byte;
var A,B,C:matice;
    X,Y,Z:byte;

procedure CTI(M,N,P:byte; var A,B:matice);
          var I,J:word;
          begin
               for I:=1 to M do
                   for J:=1 to N do
                   begin
                   write('a [',I,',',J,'] = ' );
                   readln(A[I,J]);
                   end;


                   for I:=1 to N do
             for J:=1 to P do
              begin
               write('b [',I,',',J,'] = ');
               readln(B[I,J]);
               end


          end;{CTI}

procedure SOUCIN(M,N,O:byte; var A,B,C:matice);
          var I,J,K:word;
          begin
               for I:=1 to M do
                   begin for K:=1 to n do
                         begin
                         C[I,K]:=0;
                         for J:=1 to o do
                             begin
                             C[I,K]:=C[I,K]+(A[I,J]*B[J,K]);
                             end;
                         end;
                   end;
          end;{SOUCIN}


procedure VYPIS1(N,O:byte; var A:matice);
var I,J:word;
begin for I:=1 to N do
      for J:=1 to O do
          begin
          gotoxy(3*J,2*I+1);
          write(A[I,J]);
          end;
          end;{VYPIS1}

procedure VYPIS2(N,O:byte; var B:matice);
var K,J:word;
begin
     for J:=1 to N do
         begin
          for K:=1 to O do
              begin
              gotoxy(3*K+20,2*J+1);
              write(B[J,K]);
              end
         end
end;{VYPIS2}
procedure VYPIS3(N,O:byte; var C:matice);
var J,K:word;
begin
     for J:=1 to N do
     begin for K:=1 to O do
           begin
           gotoxy(4*K+40,2*J+1);
           write(C[J,K]);
           end
     end
end;{VYPIS3}


BEGIN
clrscr;
write('zadej pocet radku matA: ');
readln(Y);
write('zadej pocet sloupcu matA (stejny jako radky matB): ');
readln(X);
write('zadej pocet sloupcu matB: ');
readln(Z);
CTI(Y,X,Z,A,B);
clrscr;
SOUCIN(Y,Z,X,A,B,C);
gotoxy(3,1);
write('matice a');
VYPIS1(Y,X,A);
gotoxy(25,1);
write('matice b');
VYPIS2(X,Z,B);
gotoxy(45,1);
writeln('matice c');
VYPIS3(Y,Z,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ý