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

uses Crt;
var
   a:array[1..50] of integer;
   n,i,j,l,rz:integer;
begin
ClrScr;
write('n=');readln(n);
randomize;
writeln('Массив:');
for i:=1 to n do
 begin
   a[i]:=random(10);
   write(a[i],' ');
 end;
writeln;
i:=1;rz:=0;
while i<=n do{пока не конец массива}
  begin
    for j:=n downto i+1 do{проверяем сконца до этого индекса+1}
    if a[j]=a[i] then{если число такое же}
       begin
         for l:=j to n-1 do{сдвинаем к нему конец массива-удаляем его}
         a[l]:=a[l+1];
         dec(n);{уменьшаем на 1 размер массива}
       end;
    rz:=rz+1;{считаем число}
    inc(i);{если нет одинаковых, идем вперед +1}
  end;
writeln('Разных чисел=',rz);
readln
end.

Leave a Comment

81 + = 84