Вводятся размеры матрицы, состоящей из целых чисел, и её элементы. Составить вектор количеств уникальных элементов в столбцах матрицы — Pascal(Паскаль)

program lb1;

const
  nn = 46;

var
  m: array [1 .. 100, 1 .. 100] of integer;
  count: array [1 .. 100] of integer;
  k: array [1 .. 100] of longint;
  fib: array [1 .. nn] of longint;
  b: array [1 .. 100] of boolean;
  i, j, l, n, zc, kol, sum: integer;
  sr: real;

function is_fib(x: integer): boolean;
var
  i: integer;
  result: boolean;
begin
  for i := 2 to nn do
    if x = fib[i] then
    begin
      result := true;
      exit;
    end;
  result := false;
  is_fib := result;
end;

begin
  fib[1] := 1;
  fib[2] := 1;
  for i := 3 to nn do
    fib[i] := fib[i - 1] + fib[i - 2];
  write('Vvedite N (razmer matricy): ');
  readln(n); { считываем размер матрицы }
  for i := 1 to n do
    for j := 1 to n do
    begin
      write('M[', i, ',', j, ']=');
      readln(m[i, j]);
    end; { считываем САМУ матрицу }

  for i := 1 to n do
  begin
    writeln;
    for j := 1 to n do
      write(m[i, j], ' '); { выводим на экран Марицу }
  end;
  writeln;
  writeln;
  for l := 1 to n do { проходим по массиву и ниже вычисляем КОЛ_ВО уникал. эл. }
  begin
    for i := 1 to n do
      b[i] := false;
    count[l] := 0;
    for i := 1 to n do
      if (not b[m[i, l]]) then
      begin
        b[m[i, l]] := true;
        inc(count[l]);
      end; { конец поиска УНИК. эл. }
  end;
  writeln('Unikalnyh el-tov v stolbzah:');
  for i := 1 to n do
    writeln('V ', i, '-tom stolbze:', count[i]);
  { выводим номер столбца и КОЛ_ВО УНИК }

  readln;

end.

Leave a Comment

− 5 = 1