PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018 Внимание! Если программа не работает, обновите версию!
begin var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println; var k:=ReadInteger('От повторов какого числа избавляемся?'); var id:=a.FindIndex(t->t=k); var b:=Copy(a); if id>-1 then begin var i:=0; while a[i]<>k do begin // до первого появляния нужного числа b[i]:=a[i]; i+=1 end; b[i]:=a[i]; i+=1; // само число var j:=i; // остальные такие числа будеи пропускать while i<a.Length do begin if a[i]<>k then begin b[j]:=a[i]; j+=1 end; i+=1 end; SetLength(b,j) end; b.Println end.