Как вариант решения задачи
Код:
const n=100; //кол-во элементов массива
var masA:array [1..n] of real; //исходный массив
masB:array [1..n-1] of real; //итоговый массив
i:integer; //для цикла
max:real; //максимальное значение массива А
posMax:integer; //позиция максимального значения
begin
max:=masA[1]; //максимуму присвоили значение первого элемента массива
posMax:=i; //первоначальная позиция максимального значения
for i:= 2 to n do //поиск максимума
if masA[i]>max then
begin
max:=masA[i]; //нахождение максимального значения массива А
posMax:=i; //позиция максимального значения
end;
{решение через два цикла}
for i:=1 to posMax-1 do masB[i]:=masA[i]; //копируем левую часть массива А до максимального значения в массив В
for i:=posMax+1 to n do masB[i-1]:=masA[i]; //копируем правую часть массива А после максимального значения в массив В
Writeln('Максимальное значение массива '+floattostr(max)); //выведение значения максимума на экран
Writeln('Позиция максимальное значение массива '+inttostr(posMax)); //вывод позиции максимального значения
for i := 1 to n-1 do writeln('masB['+inttostr(i)+']='+floattostr(masB[i])); //вывод на экран
end.
Решение через один цикл
Код:
for i:= 1 to n do //Исключаем позицию максимального значения (В одном цикле)
begin
if i<posMax then masB[i]:=masA[i]; //копируем левую часть массива А до максимального значения в массив В
if i>posMax then masB[i-1]:=masA[i]; //копируем правую часть массива А после максимального значения в массив В
end;