Dynamiczna tabela, program przerywa działanie

Dynamiczna tabela, program przerywa działanie
OJ
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam, mam problem z takim oto kodem, program działa ale gdy dochodzi do przed ostatniej linijki zamiast ją wykonać i czekać na klawisz enter kończy sam swoje działanie. Gdy używam statycznej tablicy wszystko działa. Gdzie jest błąd ?
program tabklica;

Kopiuj
{$APPTYPE CONSOLE}

uses
  SysUtils;

var tablica: array of array of Integer;
    n, m, i, k: Integer;

begin
write('Podaj ilosc wierszy: ');
readln(n);
write('Podaj ilosc kolumn: ');
readln(m);
   SetLength(Tablica, n,m);


for i := 0 to n do
  begin
   Randomize;

    for k := 0 to m do begin

    tablica[i][k]:= Random(1000);
   writeln(tablica[i][k], ' ');

    end;

writeln('');

  end;


readln;
  


end.
_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
3

SetLength(Tablica, n+1,m+1);

EDIT:
A jeżeli się zastanowić to błędy są tu: to n-1 do oraz to m-1 do

KA
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Gorlice
0

I po co co Randomize w pętli?

OJ
  • Rejestracja: dni
  • Ostatnio: dni
0

Było poza pętlą ale próbowałem wszystkiego ;)

babubabu
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Łódź
  • Postów: 648
3
Kopiuj
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
 
var
  tablica    : array of array of Integer;
  n, m, i, k : Integer;
 
begin
  Randomize;
  write('Podaj ilosc wierszy ');
  readln(n);
  write('Podaj ilosc kolumn ');
  readln(m);
  SetLength(Tablica, n,m);
  for i = 0 to n - 1 do
  begin
    for k = 0 to m - 1 do
    begin
      tablica[i][k]= Random(1000);
      writeln(tablica[i][k], ' ');
    end;
    writeln('');
  end;
  readln;
end.

Trochę poprawiłem formatowanie i 2 błędy.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.