РУҚА
22

Анализ алгоритма в позиционной системе

ЕГЭ · Информатика · Задание 22 · Алгоритмы и исполнители
ПовышеннаяФИПИA878A5Короткий ответ≈ 4 минутыОтвет сверен с ключом

Получив на вход натуральное число $x$, алгоритм выполняет несколько итераций: на каждой итерации увеличивает $N$ на 1, прибавляет остаток от деления $x$ на 4 к $S$, умножает $P$ на этот остаток, после чего заменяет $x$ на целую часть частного $x/4$. После завершения цикла к $S$ и $P$ прибавляется $N$. Затем алгоритм печатает сначала $S$, а потом $P$. Укажите наибольшее число $x$, при вводе которого алгоритм печатает сначала 7, а потом 3.

Python
1x = int(input())
2P = 1
3S = 0
4N = 0
5while x > 0:
6    N = N + 1
7    S = S + (x % 4)
8    P = P * (x % 4)
9    x = x // 4
10S = S + N
11P = P + N
12print(S)
13print(P)
Условие как в банке ФИПИ — открыть и сверить
Впишите правильный ответ.

Ниже на четырёх языках программирования записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа: S и P. Укажите наибольшее число x, при вводе которого алгоритм печатает сначала 7, а потом 3.

С++

Python

#include <iostream>
using namespace std;

int main()
{

int x, P, S, N;
cin >> x;
P = 1;

S = 0;
N = 0;
while (x > 0) {
N = N + 1;

S = S + (x % 4)
P = P * (x % 4)
x = x / 4;
}

S = S + N;

P = P + N;
cout << S << endl << P << endl;
return 0;
}

x = int(input())
P = 1
S = 0

N = 0
while x > 0:
N = N + 1

S = S + (x % 4)

P = P * (x % 4)
x = x // 4
S = S + N

P = P + N

print(S)
print(P)

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

Паскаль

алг
нач
цел x, P, S, N
ввод x
P := 1
S := 0

N := 0
нц пока x > 0
N := N + 1

S := S + mod(x, 4)

P := P * mod(x, 4)
x := div(x, 4)
кц

S := S + N

P := P + N
вывод S, нс, P
кон

var x, P, S, N: integer;
begin
readln(x);
P := 1;
S := 0;

N := 0;
while x > 0 do
begin
N := N + 1;

S := S + (x mod 4);

P := P * (x mod 4);
x := x div 4
end;

S := S + N;

P := P + N;
writeln(S);
writeln(P)
end.



Ваш ответ

Формат: число или слово без единиц измерения; дробную часть отделяйте запятой.

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

Остатки от деления на 4 — это цифры числа $x$ в четверичной системе счисления.

2Наводящая — какие числа считатьуровень 2 из 3

Если в записи $x$ в четверичной системе $N$ цифр, то сумма цифр равна $7-N$, а произведение цифр — $3-N$.

3Прямая — фактически решениеуровень 3 из 3

Возможен только случай $N=3$: произведение цифр равно 0, сумма равна 4. Для наибольшего числа выбираем цифры $3$, $1$, $0$, поэтому $x=(310)_4=3\cdot4^2+1\cdot4=52$.

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

Задание 22 ЕГЭ, информатика

Задача из темы «Алгоритмы и исполнители»: в ней 432 задачи с ответом и разбором по шагам. В 22-м номере бланка — 101 задача.

Ответ можно проверить здесь же, а если не выходит — открыть подсказку или разбор. Регистрация не нужна.