Ответ: Обработка элементов массива
Например, на Python:
s = 0
for i in range(n):
if a[i] > 150 and a[i] % 2 == 0:
s += a[i]
for i in range(n):
if a[i] > 150 and a[i] % 2 == 0:
a[i] = s
for i in range(n):
print(a[i])
У этого задания официального ключа нет, поэтому ответ получен в разборе и с ключом не сверен. Перед тем как заучивать результат, пройдите выкладки — там видно, откуда взялось каждое число.
Дан целочисленный массив из 30 элементов. Элементы массива могут принимать натуральные значения от 1 до 10 000 включительно. Опишите на одном из языков программирования алгоритм, который находит сумму элементов массива, больших 150 и при этом имеющих чётное значение, а затем заменяет каждый такой элемент на число, равное найденной сумме. Гарантируется, что хотя бы один такой элемент в массиве есть. В качестве результата необходимо вывести изменённый массив, каждый элемент выводится с новой строчки.
Например, для исходного массива из семи элементов:
48
163
200
152
177
76
2
программа должна вывести следующий массив:
48
163
352
352
177
76
2
Исходные данные объявлены следующим образом: массив содержит 30 элементов и называется a, количество элементов задаётся переменной n со значением 30. Разрешается использовать только переменные, объявленные в условии: i, j и k. В качестве ответа приведите фрагмент программы, который должен находиться на месте многоточия после ввода элементов массива. Можно использовать Python, Бейсик, алгоритмический язык, Паскаль или C++.
Где здесь ошибаются
Замена элементов во время первого прохода до того, как найдена полная сумма.
Проверка только на чётность без условия a[i] > 150.
Замена всех элементов массива вместо элементов, удовлетворяющих условию.
Вывод суммы вместо изменённого массива.
Использование дополнительной переменной, не объявленной в условии.