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

code: #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.      
Поделиться:

Похожие статьи: