Задача 12 Урок 15

Задача 12 Урок 15

Напишите функцию, которая определяет являются ли значения переданного массива целых чисел уникальными относительно друг друга, если среди есть неуникальные элементы, то удалите их, сдвинув значения влево, заполняя оставшиеся справа ячейки нулями.
Протестируйте работу функции на массиве из 7 случайных элементов из диапазона от 1 до 15-ти.
Например для:

type
  aArray = array [1..7] of integer;

var a,s:aArray;
k:integer;

function unique(b: aArray):aArray;
var j,i,x,l: integer;
c:aArray;
 begin
 x:=0;
 for i:=1 to 6 do
   for j:=(i+1) to 7 do
   begin
     if b[i]=b[j] then
     begin
       x:=x+1;
       s[x]:=b[i];
       x:=x+1;
       s[x]:=b[j];
     end;
   end;
     for  i:=1 to x do
       for  j:=1 to 7 do
         if s[i]=b[j] then
         begin
           for  l:=j to 7 do
             b[l]:=b[l+1];
           b[high(b)]:=0;
         end;
result:=b;
end;

begin
randomize();
  for k:=1 to 7 do
  begin
    a[k]:=random(15)+1;
  end;
  for k:=1 to 7 do
  begin
    write(a[k],' ');
  end;
  writeln();
  s:=unique(a);
  for k:=1 to 7 do
  begin
    write(s[k],' ');
  end;
  readln();
end.
vedro-compota's picture

форматирование

_____________
матфак вгу и остальная классика =)