Дан целочисленный массив А. Удалить из массива все одинаковые элементы.В чем моя ошибка? program hgfd1; const n=5; var a:array[1..n] of integer; i,c:integer; begin randomize; for i:=1 to n do begin a[i]:=random(8)+0; writeln('a...

Дан целочисленный массив А. Удалить из массива все одинаковые элементы.В чем моя ошибка? program hgfd1; const n=5; var a:array[1..n] of integer; i,c:integer; begin randomize; for i:=1 to n do begin a[i]:=random(8)+0; writeln('a[',i,']=',a[i]); end; for i:=2 to n do for c:=i-1to 1 do if a[i]=a[c] then a[i]:=a[i+1]; for i:=1 to n do writeln('a[',i,']=',a[i]); end.
Гость
Ответ(ы) на вопрос:
Гость
//Как-то громоздко получилось, но я так вижу. Эх, выходные. const n=5; var a:array[1..n] of integer; b:array[0..8] of integer; ar:array[1..n] of integer; i,c,j:integer; begin randomize; writeln('Array:'); for i:=1 to n do begin a[i]:=random(8); write(a[i]:4); end; for i:=1 to n do  begin;   for j:=0 to 8 do     if a[i]=j then inc(b[j]);  end; for i:=1 to n do  begin;   for j:=0 to 8 do    if (b[j]>1) and (a[i]=j) then a[i]:=9;  if a[i]<>9 then   begin;    inc(c);    ar[c]:=a[i];   end;  end;  writeln;  for i:=0 to 8 do writeln(i,'=',b[i]); writeln; writeln('Final array:'); for i:=1 to n do if a[i]=9 then a[i]:=0; for i:=1 to c do begin;  a[i]:=ar[i];  write(a[i]:4); end; end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы