//PascalABC.Net 3.0, сборка 1064const nn=50;var a:array[1..nn] of integer; i,n,imin:integer;begin Write('Введите количество элементов в массиве: '); Read(n); Randomize; Writeln('Исходный массив'); imin:=1; for i:=1 to n do begin a[i]:=Random(51)-25; Write(a[i],' '); if a[i]<a[imin] then imin:=i; end; Writeln; for i:=imin to n-1 do a[i]:=a[i+1]; Writeln('Массив-результат'); for i:=1 to n-1 do Write(a[i],' '); Writelnend.
Тестовое решение:Введите количество элементов в массиве: 15Исходный массив17 -3 22 18 -13 -5 5 -15 -18 23 17 -2 -20 23 2 Массив-результат17 -3 22 18 -13 -5 5 -15 -18 23 17 -2 23 2
А это версия для тех, кто думает, что Паскалю пора давно "на свалку"://PascalABC.Net 3.0, сборка 1064begin var n:=ReadInteger('Введите количество элементов в массиве'); var a:=SeqRandom(n,-25,25).ToArray(); Writeln('Исходный массив:',#13#10,a); Writeln('Результат:',#13#10,a.Where(x->x<>a.Min));end.
Тестовое решение:Введите количество элементов в массиве 15Исходный массив:[-10,-15,8,-19,9,21,-22,-11,12,14,2,19,-25,-5,-15]Результат:[-10,-15,8,-19,9,21,-22,-11,12,14,2,19,-5,-15]
Можно сравнить понятность кода и его размер как со "школьным" решением, так и с программой на Java, приведенной в предыдущем ответе.