РУҚА
25

Обработка массива из 30 элементов

ЕГЭ · Информатика · Тапсырма 25 · Алгоритмдер және орындаушылар
КүрделіФИПИ632487Толық шешім≈ 5 минут

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

В качестве ответа приведите фрагмент программы, который должен находиться на месте многоточия после ввода массива. Можно использовать только переменные, объявленные в условии. Для Python исходные данные объявлены так: `a = []`, `n = 30`, затем массив вводится в цикле `for i in range(0, n): a.append(int(input()))`.

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

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

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

20

112

92

45

17

206

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

20

112

2

45

2

206

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

Бейсик

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

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

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

Сначала отдельным циклом подсчитайте количество подходящих элементов, затем вторым циклом замените их этим количеством и выведите массив.

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

Для Python можно использовать переменную j как счётчик: `j = 0`; условие имеет вид `a[i] < 100 and a[i] % 5 != 0`.

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

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

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

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