program RandomMatrix;
const
ROWS = 4;
COLS = 5;
type
TMatrix = array[1..ROWS, 1..COLS] of Integer;
{ Print matrix to console }
procedure PrintMatrix(matrix: TMatrix; rows, cols: Integer);
var
i, j: Integer;
begin
for i := 1 to rows do
begin
for j := 1 to cols do
write(matrix[i, j]:4);
writeln;
end;
end;
{ Generate a random integer between min and max }
function GenerateRandomInteger(min, max: Integer): Integer;
begin
{ Turbo Pascal random returns [0..max-1], so scale accordingly }
GenerateRandomInteger := min + Random(max - min + 1);
end;
{ Fill matrix with random integers }
procedure GenerateRandomMatrix(var matrix: TMatrix; rows, cols: Integer);
var
i, j: Integer;
begin
Randomize; { seed random generator }
for i := 1 to rows do
for j := 1 to cols do
matrix[i, j] := GenerateRandomInteger(1, 100);
end;
var
matrix: TMatrix;
begin
{ Generate random matrix }
GenerateRandomMatrix(matrix, ROWS, COLS);
{ Print matrix }
PrintMatrix(matrix, ROWS, COLS);
end.
(*
run:
91 30 40 93 75
30 63 56 80 73
6 35 86 36 31
96 49 99 37 4
*)