Заменить максимальный по модулю отрицательный элемент нулем

Bezzybka Bezzybka    3   09.07.2019 19:20    1

Ответы
ivansndreev1223 ivansndreev1223  06.08.2020 21:59
//Визуально разделил циклы, чтобы было более читаемо 

var ar:array[1..10] of integer;
max,i:integer;
begin;
randomize; //чтобы random() работал как надо
writeln('Array');

for i:=1 to 10 do
begin;
ar[i]:=random(-10,10); //случайное число от -10 до 10
write(ar[i]:4);
end;

for i:=1 to 10 do //"проходим" через весь массив
if (ar[i]<0) and (max<abs(ar[i])) then max:=abs(ar[i]);
{если элемент массива меньше нуля и его модуль больше максимума тогда записать модуль этого числа в максимум}

writeln;
writeln('Max:-',max); //выводим на всякий случай максимум

writeln('Final array:');
for i:=1 to 10 do //снова проходим по всему массиву
begin;
if ar[i]=-max then ar[i]:=0; 
{если элемент равен отрицательному максимуму(мы брали модуль) присвоить ему 0}
write(ar[i]:4);
end;
end.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика