Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 14. 06. 2013 18:58

hans66
Příspěvky: 263
Pozice: Student kombinovaného studia
Reputace:   
 

Pascal-matice

Ahoj, chtěl bych se zeptat zda nemáte nějaké příklady na cviceni s maticemi.

Dále bych se chtel zeptat, mam matici 20x20 a mam ji naplnit nahodnymi cisly z intervalu (-2;2), jak mám generovat čísla z tohoto intervalu?pres funkci random, ale nevim jak to zapsat

Děkuji za rady.

Offline

  • (téma jako vyřešené označil(a) hans66)

#2 15. 06. 2013 11:45

Leinad1
Zelenáč
Příspěvky: 12
Reputace:   
 

Re: Pascal-matice

Random(n) vrací celá čísla z intervalu <0;n). Jakou funkcí nebo operací ten interval posunout?

Offline

 

#3 15. 06. 2013 14:42

hans66
Příspěvky: 263
Pozice: Student kombinovaného studia
Reputace:   
 

Re: Pascal-matice

↑ Leinad1: Děkuji za radu:-)


var
  Application: TMyApplication;
  mat:array[1..20,1..20] of integer;
  poc,i,j:integer;
begin
  randomize;
  for i:=1 to 20 do
      begin
      for j:=1 to 20 do
      mat[i,j]:=random(5)-2;//generovani nahodnych cisle z intervalu (-2;2)

      end;
                                         //vypis matice
  for i:=1 to 20 do begin
      for j:=1 to 20 do
      write(mat[i,j]:1:0);
      writeln;
  end;
  poc:=0; //vynulovani poctu, aby pocet byl roven 0 a nemohl si priradit libovolnou hodnotu
for i:=1 to 4 do begin
     for j:=1 to 4 do
     if ((mat[i,j+1]=0) and (mat[i,j-1]=0) and (mat[i+1,j]=0) and (mat[i-1,j]=0))


        then poc:=poc+1;

      end;
writeln('pocet nulovych prvku v pravem okoli=',poc);
readln;
end.

jeste bych se chtel zeptat jak mam formatovat vypsani matice aby mezi sloupecky byla mezera abych vedel jesti tam je jednociferne nebo dvouciferne cislo? děkuji.

for i:=1 to 20 do begin
      for j:=1 to 20 do
      write(mat[i,j]:1:0);
      writeln;
ale toto mi pise chybu a kdyz jsem tam zkousel dat apostrofy ' ' tak take:(

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson