В массиве из 20 целых чисел найдите наибольший элемент среди отрицательных и поменяйте его местами с первым элементом.Вот начал делать, а потом не знаю как дальше:constk=20;vara:array[1..k] of integer;g,i,max:=integer;beginfor ...

В массиве из 20 целых чисел найдите наибольший элемент среди отрицательных и поменяйте его местами с первым элементом. Вот начал делать, а потом не знаю как дальше: const k=20; var a:array[1..k] of integer; g,i,max:=integer; begin for i:=1 to n do begin a[i]:=random(20)-10; write(a[i],' '); max:=a[i]; for i:=1 to n do if a[i]<0 then max:=a[i]; writeln('max=',max); end; Дальше не знаю, там по-моему надо ввести переменную (в моём случае "g") и мне кажется там ошибка в поиске максимально среди отрицательных элементов. Помогите пожалуйста.
Гость
Ответ(ы) на вопрос:
Гость
var  a:array[1..20] of integer; i,max,c,nom:integer; begin max:=-100000000; for i:=1 to 20 do begin a[i]:=random(20)-10; write(a[i],' '); end; for i:=1 to 20 do begin if (a[i]<0) and  (a[i]>max) then  nom:=i; if (a[i]<0) and  (a[i]>max) then max:=a[i]; end; writeln; for i:=1 to 20 do begin if i=nom then swap(a[nom],a[1]); end; for i:=1 to 20 do begin write(a[i],' '); end; writeln('max=',max,'); end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы