Wypelnianie macierzy...

0

Siema wszystkim zainteresowanym! ;) mam taki oto kod:

program Macierz;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var
 tab: array[1..10,1..10] of integer;
 i,j: integer;

begin
 for i:=1 to 10 do
  for j:=1 to 10 do
  begin
   if (j=10-i+1) or (i=j) then tab[i,j] := 0 else tab[i,j] := 2;
   if ((j>i) and (j<6)) then tab[i,j] := 5;
   if ((j>i) and (i<10-j+1)) then tab[i,j] := 5;
  end;


 for i:=1 to 10 do
  for j:=1 to 10 do
  begin
   if (j=10-i+1) or (i=j) then tab[i,j] := 0 else tab[i,j] := 2;
   if ((i>j) and (i<6)) then tab[i,j] := 3;
   if ((i>j) and (i<10-j+1)) then tab[i,j] := 3;
  end;

 for i:=1 to 10 do
 begin
  for j:=1 to 10 do
   Write(tab[i,j],' ');
  Writeln;
 end;

 Readln;
end.

Czy ktos moglby mi podpowiedziec dlaczego mi znikaja 5-tki???

Z gory dzieki ;)

     White Angel
0

może dlatego że dwa razy wykonujesz tę samą pętlę. za pierwszym razem wpisujesz do tablicy "5", a później zastępujesz je "3" w kolejnej pętli.

0

Tak, ale chyba macierz ma liczby zapamietane w pamieci no nie?? A poza tym dwie struktury sie nie pokrywaja z jednej strony bo jedna rysuje piramidke z boku a druga z gory :)

0

racja, nie zauważyłem że te pętelki trochę się różnią.
jak wykasujesz tę linijkę:

if (j=10-i+1) or (i=j) then tab[i,j] := 0 else tab[i,j] := 2;

w drugiej pętli, to powinno być oki.

1 użytkowników online, w tym zalogowanych: 0, gości: 1