var a: array[1..30] of single;max: single; i: integer; k: integer;beginfor i:=1 to 30 do begin write(\'Введите элемент \', i,\' =\'); readln (a[i]); end;max:= a[1];k:= 1;for i:=1 to 30 do begin if max < a[i] then begin max:= a[i]; k:=i; end; if a[i] < 0 then a[i]:= -a[i]; end;writeln (\'Максимальное значение =\', max);writeln (\'номер элемента =\', k);end.В переменной \"max\" храниться максимальное значение, а в переменной \"k\"- номер элемента с максимальным значением. Перед циклом за максимальный берется 1-й элемент и запоминается в этих переменных.В цикле сначала переменная \"max\" сравнивается с элементом массива и если она меньше текущего элемента, то в переменной \"max\" сохраняется новое значение, а в переменной \"k\" новый номер.Затем если элемент отрицательный, то он заменяется на равный по модулю элемент.