РУҚА
25

Замена элементов массива

ЕГЭ · Информатика · Тапсырма 25 · Массивтер және жолдар
КүрделіФИПИ860E60Толық шешім≈ 8 минут

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от −10 000 до 10 000 включительно. Гарантируется, что хотя бы один элемент массива делится нацело на 5. Опишите алгоритм, который находит максимум среди элементов массива, делящихся нацело на 5, а затем заменяет каждый элемент, делящийся нацело на 5, на найденный максимум. В качестве результата необходимо вывести изменённый массив, каждый элемент — с новой строки.

Например, для исходного массива из шести элементов 5, 7, 10, 25, 39, 15 программа должна вывести 25, 7, 25, 25, 39, 25.

В программе используются массив a из 30 элементов и целочисленные переменные i, j, k. Для Python исходные данные считываются следующим образом:
a = []
n = 30
for i in range(0, n):
a.append(int(input()))

Приведите фрагмент программы, который должен находиться на месте многоточия после ввода исходных данных. Можно использовать Python или другой язык программирования, указав его название и версию. Используйте только предложенные исходные данные и переменные.

Запишите фрагмент программы, реализующий поиск максимума, замену подходящих элементов и вывод изменённого массива.

Условие как в банке ФИПИ — открыть и сверить
Дайте развернутый ответ.

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от – 10 000 до 10 000 включительно. Опишите
на одном из языков программирования алгоритм, который находит максимум среди элементов массива, делящихся нацело на 5, а затем заменяет каждый элемент, делящийся нацело на 5, на число, равное найденному максимуму. Гарантируется, что хотя бы один такой элемент в массиве есть. В качестве результата необходимо вывести изменённый массив, каждый элемент выводится с новой строчки.

Например, для исходного массива из алты элементов:

5

7

10

25

39

15

программа должна вывести следующий массив

25

7

25

25

39

25

Исходные данные объявлены так, как показано ниже на примерах для некоторых языков программирования. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.

Бейсик

Python

CONST N AS INTEGER = 30

DIM A (1 TO N) AS LONG

DIM I AS LONG,

J AS LONG,

K AS LONG

FOR I = 1 TO N

INPUT A(I)

NEXT I

...

END

# допускается также

# использовать две

# целочисленные переменные j и k

a = []

n = 30

for i in range(0, n):

a.append(int(input()))

...


Алгоритмический язык

Паскаль

алг

нач

цел N = 30

целтаб a[1:N]

цел i, j, k

нц үшін i от 1 до N

ввод a[i]

кц

...

кон

const

N = 30;

var

a: array [1..N] of longint;

i, j, k: longint;

begin

for i := 1 to N do

readln(a[i]);

...

end.

C++

#include <iostream>

using namespace std;

const int N = 30;

int main() {

long a[N];

long i, j, k;

for (i = 0; i < N; i++)

cin >> a[i];

...

return 0;

}

В качестве ответа Вам необходимо привести фрагмент программы, который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и используемую версию языка программирования, например Free Pascal 2.6). В этом случае Вы должны использовать те же самые исходные данные и переменные, какие были предложены в условии (например, в образце, записанном на Алгоритмическом языке).



Жауап

Это задание с развёрнутым решением: ответом считается шешімнің барысын жазу, жол емес. Шешімді қағазға жазып, салыстырыңыз с разбором — там каждый шаг с обоснованием.

Талдауды ашу
!
3 уровня: от лёгкого толчка до почти готового решения. Следующий открывается, алдыңғысы оқылған кезде, — жауапқа бірден секіріп кетпеу үшін.
1Мягкая — с чего смотретьдеңгей 1 из 3

Как просмотреть массив и выбрать только элементы, которые делятся на 5 без остатка?

2Жетекші — қандай сандарды есептеудеңгей 2 из 3

Сначала отдельным циклом найдите максимум среди элементов, для которых выполняется условие $a[i] \bmod 5 = 0$, затем вторым циклом замените все такие элементы.

3Тікелей — іс жүзінде шешімдеңгей 3 из 3

В Python можно сначала присвоить переменной $j$ значение −10001, обновлять её при выполнении условий $a[i] \% 5 == 0$ и $a[i] > j$, а затем заменить подходящие элементы значением $j$.

Всё равно не складывается?Полное Шешім с обоснованием каждого шага — на отдельной странице.
Шешімді ашу

Тапсырма 25 ЕГЭ, информатика

Задача из темы «Массивы и строки»: в ней 238 задач жауабымен және қадамдық талдауымен. В 25-м номере бланка — 216 задач.

Жауапты осы жерде тексеруге болады, ал егер шықпаса — ашуға болады көмекші кеңес немесе талдау. Тіркелу қажет емес.