Предмет: Информатика, автор: begenjov1997

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от 0 до 10 000 включительно. Опишите на одном из языков программирования алгоритм, который находит сумму элементов массива, меньших 200 и при этом кратных 5, а затем заменяет каждый такой элемент на число, равное найденной сумме. Гарантируется, что хотя бы один такой элемент в массиве есть. В качестве результата необходимо вывести изменённый массив, каждый элемент выводится с новой строчки. Например, для исходного массива из шести элементов:
204 115 27 20 305 4
программа должна вывести (по одному числу в строке) числа
204 135 27 135 305 4
Язык Паскаль

Ответы

Автор ответа: Alphaeus
1

Program Begenjov1997;

const

 n = 30; {Количество элементов массива}

 m = 10000; {Максимально возможное значение элемента}

var

 a:array[1..n] of integer;

 i, sum: integer;

 s:string;

begin

 s:='**** -=Alphaeus=- ****';

 for i:=1 to 22 do begin write(s[i]); sleep(60) end;

{заполняем массив случайными числами}

 writeln; randomize;

 for i:=1 to n do a[i]:=random(m+1);

{Ищем максимальный и минимальный элементы}

 sum:=0;

 for i:=1 to n do

   if (a[i]<200) and (a[i] mod 5 = 0) then sum:=sum+a[i];

{Заменяем эти элементы найденной суммой}

 for i:=1 to n do

   if (a[i]<200) and (a[i] mod 5 = 0) then a[i]:=sum;

{Вывод}

 writeln;

 for i:=1 to n do writeln(a[i]);

end.

Похожие вопросы
Предмет: Обществознание, автор: arbatskaasofia
Предмет: Геометрия, автор: adelia0712
Предмет: Право, автор: lolitonik