РУҚА
ЕГЭ · информатика · номер 25 · решения с ответами

Задание 25 ЕГЭ по информатике: решения ФИПИ с ответами по шагам

Все задачи задания 25 из открытого банка ФИПИ с готовым ответом и началом разбора. Полное решение по шагам и официальный ключ — по ссылкам в карточке.

Задания без решений
216
решений с ответами
6
тем в номере
11
страниц списка
101ФИПИ 78B588№ 25ВысокаяТеория чисел

Числа по маске и делимость

Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы: символ «?» означает ровно одну произвольную цифру; символ «*» означает любую последовательность…

  1. 1
    Так как число не превышает $10^8$, после префикса 1234 и суффикса 54 может находиться не более двух цифр.
  2. 2
    При пустой последовательности получается число $123454$, которое не делится на 21.

Ещё 3 шага — в полном решении

Решение полностьюОтветРешать самому5 шагов в разборе
102ФИПИ 7DA969№ 25ПовышеннаяАлгоритмы и исполнители

Целочисленное деление в цикле

Запишите число, которое будет напечатано в результате выполнения следующей программы. Программа представлена на пяти языках программирования: Бейсик, Python, алгоритмическом языке, Паскале и Си. Во…

  1. 1
    При каждом проходе цикла значение $s$ заменяется результатом целочисленного деления на 2.$$80 \to 40 \to 20 \to 10 \to 5 \to 2 \to 1 \to 0$$
  2. 2
    До получения нулевого значения цикл выполняется 7 раз.

Ещё 1 шаг — в полном решении

Решение полностьюОтветРешать самому3 шага в разборе
103ФИПИ 7FDDFB№ 25ПовышеннаяАлгоритмы и исполнители

Сумма элементов, не кратных пяти

Дан целочисленный массив из 20 элементов. Элементы массива могут принимать целые значения от −10 000 до 10 000 включительно. Опишите на естественном языке или на одном из языков программирования…

  1. 1
    Создаём переменную-накопитель суммы и инициализируем её нулём.
  2. 2
    Последовательно просматриваем все 20 элементов массива.

Ещё 2 шага — в полном решении

Решение полностьюОтветРешать самому4 шага в разборе
104ФИПИ 815116№ 25ПовышеннаяАлгоритмы и исполнители

Изменение элемента массива

В программе используется одномерный целочисленный массив $A$ с индексами от 0 до 10. Значения элементов равны 2, 5, 4, 7, 8, 10, 1, 0, 3, 9, 6 соответственно. Определите значение переменной $c$…

  1. 1
    Изначально $A[0]=2$ и $c=0$. При $i=1$: $A[1]=5>2$, поэтому $c=1$, а $A[0]$ становится равным 5.$$A[0]=5,\quad c=1$$
  2. 2
    При $i=2$: $A[2]=4\not>5$, значение $c$ не изменяется.

Ещё 3 шага — в полном решении

Решение полностьюОтветРешать самому5 шагов в разборе
105ФИПИ 82874B№ 25ПовышеннаяМассивы и строки

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

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать натуральные значения от 1 до 10000 включительно. Опишите на одном из языков программирования алгоритм, который находит…

  1. 1
    Поскольку гарантируется наличие хотя бы одного элемента, оканчивающегося на 0, можно начать поиск минимума со значения $10000$.$$k = 10000$$
  2. 2
    В первом проходе проверяем последнюю цифру каждого элемента. Если элемент оканчивается на 0 и меньше текущего минимума, сохраняем его в переменной $k$.$$a[i] \bmod 10 = 0 \land a[i] < k$$

Ещё 3 шага — в полном решении

Решение полностьюОтветРешать самому5 шагов в разборе
106ФИПИ 82E7CD№ 25ПовышеннаяАлгоритмы и исполнители

Цикл с уменьшением числа

Программа задаёт значения $s = 355$ и $n = 0$. Пока $s > 0$, она уменьшает $s$ на $20$ и увеличивает $n$ на $2$. Определите число, которое будет напечатано.

  1. 1
    После $k$ итераций значение переменной $s$ равно:$$s = 355 - 20k$$
  2. 2
    Цикл продолжается, пока $s > 0$. После 17 итераций $s = 15$, поэтому нужна ещё одна итерация. Всего цикл выполнится 18 раз.$$355 - 20 \cdot 17 = 15 > 0,\quad 355 - 20 \cdot 18 = -5 \leq 0$$

Ещё 1 шаг — в полном решении

Решение полностьюОтветРешать самому3 шага в разборе
107ФИПИ 8453A9№ 25ПовышеннаяМассивы и строки

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

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать натуральные значения от 1 до 10 000 включительно. Опишите на одном из языков программирования алгоритм, который находит…

  1. 1
    Сначала перебираем все элементы массива и накапливаем сумму тех, которые больше 150 и имеют чётное значение.$$S = \sum_{i=0}^{29} a_i \text{ при } a_i > 150 \text{ и } a_i \bmod 2 = 0$$
  2. 2
    Вторым проходом снова проверяем это условие и заменяем каждый подходящий элемент найденной суммой.$$a_i := S$$

Ещё 2 шага — в полном решении

Решение полностьюОтветРешать самому4 шага в разборе
108ФИПИ 84D6E3№ 25ПовышеннаяСистемы счисления

Преобразование двоичной записи

На вход алгоритма подаётся натуральное число $N$. Алгоритм строит по нему новое число $R$. Сначала строится двоичная запись числа $N$. Если сумма цифр в двоичной записи чётная, справа дописывается…

  1. 1
    Проверяем значения $N$ по возрастанию, пока результат не станет больше 40.
  2. 2
    Для $N=15$: $15_{10}=1111_2$. Сумма цифр равна 4, поэтому справа дописывается 0, а первые два разряда заменяются на 10: $1111_2\rightarrow10110_2=22_{10}$.

Ещё 2 шага — в полном решении

Решение полностьюОтветРешать самому4 шага в разборе
109ФИПИ 860E60№ 25ПовышеннаяМассивы и строки

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

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

  1. 1
    Для поиска максимума среди элементов, кратных 5, введём переменную j с начальным значением −10001. Это значение меньше любого возможного элемента массива.$$j = -10001$$
  2. 2
    Просматриваем все элементы массива. Если элемент делится на 5 и превосходит текущий максимум, обновляем значение j.$$a[i] \% 5 = 0 \land a[i] > j \Rightarrow j = a[i]$$

Ещё 2 шага — в полном решении

Решение полностьюОтветРешать самому4 шага в разборе
110ФИПИ 876cF0№ 25ВысокаяТеория чисел

Поиск чисел по простым множителям

Напишите программу, которая перебирает целые числа, большие 2 920 573, в порядке возрастания и ищет среди них числа, представленные в виде произведения ровно двух простых множителей, не обязательно…

  1. 1
    Находим простые числа, в записи которых ровно одна цифра 9, и перебираем их произведения, начиная с чисел, больших 2 920 573.
  2. 2
    Первое подходящее произведение — квадрат простого числа 1709.$$1709\cdot1709=2920681$$

Ещё 4 шага — в полном решении

Решение полностьюОтветРешать самому6 шагов в разборе
111ФИПИ 88A2CE№ 25ВысокаяТеория чисел

Поиск чисел по делителям

Пусть $M$ — сумма минимального и максимального натуральных делителей целого числа, не считая единицы и самого числа. Если таких делителей у числа нет, то считаем значение $M$ равным нулю. Напишите…

  1. 1
    Для каждого числа $n$ ищем его наименьший делитель $p$, больший единицы. Если делителей, кроме 1 и самого числа, нет, значение $M$ равно нулю.$$M = 0$$
  2. 2
    Если $p$ найден, то максимальный собственный делитель числа равен $n/p$, поэтому вычисляем значение $M$.$$M = p + \dfrac{n}{p}$$

Ещё 1 шаг — в полном решении

Решение полностьюОтветРешать самому3 шага в разборе
112ФИПИ 89DED0№ 25ВысокаяТеория чисел

Маска числа и деление

Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы: символ «?» означает ровно одну произвольную цифру; символ «*» означает любую последовательность…

  1. 1
    Рассмотрим все числа, соответствующие маске 2*1?5?1 и не превышающие $10^8$. Проверяем варианты с пустой, одноразрядной и двухразрядной последовательностью вместо символа «*».
  2. 2
    Для семизначного варианта число имеет вид $210501+1000a+10b$. Перебор цифр $a$ и $b$ с проверкой делимости на 1921 даёт число 213231.

Ещё 2 шага — в полном решении

Решение полностьюОтветРешать самому4 шага в разборе
113ФИПИ 89FDB5№ 25ПовышеннаяАлгоритмы и исполнители

Результат выполнения цикла

Запишите число, которое будет напечатано в результате выполнения следующей программы. Для Вашего удобства программа представлена на пяти языках программирования.

  1. 1
    В начале работы программы $s = 0$ и $n = 0$. На каждой итерации $s$ увеличивается на $8$, а $n$ — на $2$.$$s = 8k,\quad n = 2k$$
  2. 2
    Найдём минимальное число итераций, при котором условие $s < 91$ перестанет выполняться:$$8k \geq 91 \Rightarrow k \geq 11{,}375$$

Ещё 1 шаг — в полном решении

Решение полностьюОтветРешать самому3 шага в разборе
114ФИПИ 8A19A7№ 25ПовышеннаяАлгоритмы и исполнители

Подсчёт обменов в массиве

В программе используется одномерный целочисленный массив $A$ с индексами от 0 до 9. Значения элементов равны 9, 1, 2, 3, 4, 5, 6, 7, 8, 0 соответственно, то есть $A[0] = 9$, $A[1] = 1$ и т. д…

  1. 1
    Изначально массив имеет вид $[9, 1, 2, 3, 4, 5, 6, 7, 8, 0]$, а $s = 0$.
  2. 2
    При $j = 0$ условие $9 < 1$ ложно, обмена нет.

Ещё 3 шага — в полном решении

Решение полностьюОтветРешать самому5 шагов в разборе
115ФИПИ 8BD535№ 25ПовышеннаяАлгоритмы и исполнители

Минимальное число после алгоритма

На вход алгоритма подаётся натуральное число $N$. Алгоритм строит по нему новое число $R$. Сначала строится двоичная запись числа $N$. Если сумма цифр в двоичной записи чётная, справа дописывается…

  1. 1
    Последовательно проверим небольшие значения $N$. Для $N=1,2,3,4,5,6,7$ получаются значения $R$, не превосходящие $19$.$$R_1=3,\ R_2=7,\ R_3=4,\ R_4=13,\ R_5=10,\ R_6=8,\ R_7=15$$
  2. 2
    Для $N=8$ двоичная запись имеет нечётную сумму цифр. Справа дописываем $1$, затем заменяем два левых разряда на $11$.$$8_{10}=1000_2\to10001_2\to11001_2$$

Ещё 1 шаг — в полном решении

Решение полностьюОтветРешать самому3 шага в разборе
116ФИПИ 8E531F№ 25ПовышеннаяАлгоритмы и исполнители

Изменение элементов массива

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать натуральные значения от 1 до 10 000 включительно. Опишите на одном из языков программирования алгоритм, который находит…

  1. 1
    Для поиска минимума среди элементов, кратных 4, перебираем все элементы массива и проверяем условие делимости без остатка.$$a[i] \bmod 4 = 0$$
  2. 2
    Переменную j первоначально задаём равной 10001 — числу, превосходящему максимальное возможное значение элемента массива. При нахождении подходящего элемента меньшего значения обновляем j.

Ещё 2 шага — в полном решении

Решение полностьюОтветРешать самому4 шага в разборе
117ФИПИ 930BF4№ 25ПовышеннаяСистемы счисления

Двоичный алгоритм построения числа

На вход алгоритма подаётся натуральное число $N$. Алгоритм строит по нему новое число $R$ следующим образом. Строится двоичная запись числа $N$. Если сумма цифр в двоичной записи числа чётная, к…

  1. 1
    Проверим значения $N$ начиная с наименьших. Для каждого числа строим двоичную запись и применяем указанное правило.
  2. 2
    Для чисел от 1 до 10 получаются следующие значения: $R(1)=11$, $R(2)=7$, $R(3)=4$, $R(4)=13$, $R(5)=10$, $R(6)=8$, $R(7)=15$, $R(8)=25$, $R(9)=18$, $R(10)=20$. Ни одно из них не больше 29.

Ещё 2 шага — в полном решении

Решение полностьюОтветРешать самому4 шага в разборе
118ФИПИ 93CFDF№ 25ПовышеннаяАлгоритмы и исполнители

Нечётные цифры в строке

Цепочки символов (строки) создаются по следующему правилу. Первая строка состоит из одного символа — цифры «1». Каждая из последующих цепочек создаётся следующим действием: в очередную строку дважды…

  1. 1
    Пусть $a_n$ — количество нечётных цифр в $n$-й строке. При переходе к следующей строке предыдущая строка записывается дважды.$$a_n = 2a_{n-1} + d(n)$$
  2. 2
    Здесь $d(n)$ — количество нечётных цифр в записи числа $n$. Для чисел от 2 до 8 значения $d(n)$ равны $0, 1, 0, 1, 0, 1, 0$ соответственно.$$a_1=1$$

Ещё 1 шаг — в полном решении

Решение полностьюОтветРешать самому3 шага в разборе
119ФИПИ 953C66№ 25ВысокаяТеория чисел

Суммы собственных делителей

Пусть $R$ — сумма различных натуральных делителей целого числа, не считая единицы и самого числа. Напишите программу, которая перебирает целые числа, большие $500\,000$, в порядке возрастания и ищет…

  1. 1
    Перебираем числа, начиная с $500001$, и для каждого вычисляем сумму его собственных делителей.
  2. 2
    Для числа $500022 = 2 \cdot 3^2 \cdot 27779$ сумма всех делителей равна $3 \cdot 13 \cdot 27780 = 1083420$, поэтому $R = 1083420 - 1 - 500022 = 583397$.

Ещё 1 шаг — в полном решении

Решение полностьюОтветРешать самому3 шага в разборе
120ФИПИ 95BF89№ 25ПовышеннаяАлгоритмы и исполнители

Обработка массива交换

В программе используется одномерный целочисленный массив $A$ с индексами от 0 до 9. Значения элементов равны 2, 6, 4, 7, 3, 9, 1, 8, 0, 5 соответственно, то есть $A[0]=2$, $A[1]=6$ и так далее…

  1. 1
    В начале $c=0$, а $A[9]=5$. При $i=0$ значение $A[0]=2$ не больше 5, поэтому обмена нет.
  2. 2
    При $i=1$: $A[1]=6>5$. Увеличиваем $c$ до 1 и меняем местами 6 и 5. Теперь $A[9]=6$.

Ещё 3 шага — в полном решении

Решение полностьюОтветРешать самому5 шагов в разборе