Сформировать двумерный массив G размером 3×9 с помощью генератора случайных чисел и вывести элементы массива на экран и в файл — Pascal(Паскаль)

Записать в одномерный массив F строку матрицы G, содержащую минимальный элемент (оформить нахождение минимального элемента в виде процедуры). Вывести элементы массива F на экран и в файл.

program PascalGuru;

var
  G: array [1 .. 3, 1 .. 9] of integer; { переменная двумерного массива }
  F: array [1 .. 9] of integer; { переменная одномерного массива }
  i, j, str: integer;
  { переменные для цикла + переменная содержащая номер строки с MIN }
  t: text; { переменная файла }

  { ----------------------------------- }
procedure minim(var rez: integer);
{ процедура находит MIN элемент и номер строки возвращает в переменную "rez" }
var
  i, min, str: integer;
begin
  min := G[1, 1];
  str := 1;
  for i := 1 to 3 do
    for j := 1 to 9 do
      if G[i, j] < min then
      begin
        min := G[i, j];
        str := i;
      end;

  rez := str;
end; { --- конец процедуры }

{ ----------------------------------- }
begin
  assign(t, 'file.txt');
  rewrite(t); { открываем файл для записи }
  for i := 1 to 3 do
    for j := 1 to 9 do
      G[i, j] := 10 + random(80); { РАНДОМНО  записываем эл-ты двум. массива }

  for i := 1 to 3 do { ниже записываем двум. массив в файл }
  begin
    if i = 1 then
      writeln(t, 'G:')
    else
      writeln(t);
    for j := 1 to 9 do
      write(t, G[i, j], ' ');
  end;

  writeln('G:'); { ниже выводим двум. массив на экран }
  for i := 1 to 3 do
  begin
    writeln;
    for j := 1 to 9 do
      write(G[i, j]:8);
  end;
  writeln;
  writeln;

  minim(str); { находим индекс строки с минимальным элементом }

  for j := 1 to 9 do
    F[j] := G[str, j]; { эту строку переписываем в массив "F" }

  writeln(t);
  writeln(t);
  writeln(t, 'F:'); { ниже массив "F" записываем в файл }
  for j := 1 to 9 do
    write(t, F[j], ' ');

  writeln('F:'); { ниже выводим массив "F" на экран }
  for j := 1 to 9 do
    write(F[j]:8);

  writeln;

  readln;
  close(t);

end.

Leave a Comment

68 − = 60