Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от 0 до 10 000 включительно. Опишите на одном из языков программирования алгоритм, который находит сумму элементов массива, меньших 200 и при этом кратных 5, а затем заменяет каждый такой элемент на число, равное найденной сумме. Гарантируется, что хотя бы один такой элемент в массиве есть. В качестве результата необходимо вывести изменённый массив, каждый элемент выводится с новой строчки. Например, для исходного массива из шести элементов: 204 115 27 20 305 4 программа должна вывести (по одному числу в строке) числа 204 135 27 135 305 4 Язык Паскаль
program replaceElements; const N = 30; var arr: array[1..N] of integer; i, sum: integer; begin sum := 0; // ввод элементов массива for i := 1 to N do begin readln(arr[i]); // находим сумму элементов, меньших 200 и кратных 5 if (arr[i] < 200) and (arr[i] mod 5 = 0) then sum := sum + arr[i]; end; // замена элементов на сумму for i := 1 to N do begin if (arr[i] < 200) and (arr[i] mod 5 = 0) then arr[i] := sum; writeln(arr[i]); end; end.
Алгоритм находит сумму элементов массива, меньших 200 и кратных 5, сохраняет эту сумму в переменной sum и заменяет каждый такой элемент массива на значение sum, после чего выводит измененный массив.
const
N = 30;
var
arr: array[1..N] of integer;
i, sum: integer;
begin
sum := 0;
// ввод элементов массива
for i := 1 to N do
begin
readln(arr[i]);
// находим сумму элементов, меньших 200 и кратных 5
if (arr[i] < 200) and (arr[i] mod 5 = 0) then
sum := sum + arr[i];
end;
// замена элементов на сумму
for i := 1 to N do
begin
if (arr[i] < 200) and (arr[i] mod 5 = 0) then
arr[i] := sum;
writeln(arr[i]);
end;
end.
Алгоритм находит сумму элементов массива, меньших 200 и кратных 5, сохраняет эту сумму в переменной sum и заменяет каждый такой элемент массива на значение sum, после чего выводит измененный массив.