Информатика. ЕГЭ
Задания для подготовки
Задачи разных лет из реальных экзаменов, демо-вариантов, сборников задач и других источников
Задание 5. Информатика. ЕГЭ. Поляков-5103
- Просмотры: 408
- Изменено: 12 апреля 2025
На вход алгоритма подаётся натуральное число \(N.\) Алгоритм строит по нему новое число \(R\) следующим образом.
- Строится двоичная запись числа \(N.\)
- К этой записи дописываются ещё несколько разрядов по следующему правилу: если \(N\) чётное, то к нему слева дописывается \(1,\) а справа — \(10,\) если \(N\) нечетное – слева дописывается \(11\) и справа \(0;\)
- Результат переводится в десятичную систему и выводится на экран.
Пример. Дано число \(N = 13.\) Алгоритм работает следующим образом:
- Двоичная запись числа \(N:\) \(1101.\)
- Число нечетное, следовательно слева дописываем \(11,\) справа \(0\) – \(11+1101+0 = 1111010.\)
- На экран выводится число \(122.\)
Сколько различных результатов, принадлежащих отрезку \([800; \, 1500],\) может быть получено в результате работы автомата?
Решение:
Python
def R(N):
bn = f'{N:b}'
if N % 2 == 0:
return int('1' + bn + '10', 2)
return int('11' + bn + '0', 2)
#print(R(13))
print(len(set([R(N) for N in range(1, 2000) if 800 <= R(N) <= 1500])))
Ответ: \(44\)
Обсуждение задания
Здесь пока нет ни одного комментария. Будьте первым!


