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

0 голосов
113 просмотров

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


Информатика (24 баллов) | 113 просмотров
0

В массиве?

0

да

Дан 1 ответ
0 голосов
Правильный ответ

//Визуально разделил циклы, чтобы было более читаемо 

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]);<br>{если элемент массива меньше нуля и его модуль больше максимума тогда записать модуль этого числа в максимум}


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.

(38.6k баллов)
0

а как мне ее объяснить

0

Сейчас напишу комментарии.

0

Написал.