Задание 5 ЕГЭ по информатике · B933D5
Троичная запись (остаток × 5)ПовышеннаяКЭС 3.3
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится троичная запись числа N.
2. Далее эта запись обрабатывается по следующему правилу:
а) если число N делится на 3, то к этой записи дописываются две последние троичные цифры;
б) если число N на 3 не делится, то остаток от деления умножается на 5, переводится в троичную запись и дописывается в конец числа.
Полученная таким образом запись является троичной записью искомого числа R.
3. Результат переводится в десятичную систему и выводится на экран.
Например, для исходного числа 1110 = 1023 результатом является число 1021013 = 30710, а для исходного числа 610 = 203 это число 20203 = 6010.
Укажите минимальное число N, после обработки которого с помощью этого алгоритма получается число R, не меньшее 242.
1. Строится троичная запись числа N.
2. Далее эта запись обрабатывается по следующему правилу:
а) если число N делится на 3, то к этой записи дописываются две последние троичные цифры;
б) если число N на 3 не делится, то остаток от деления умножается на 5, переводится в троичную запись и дописывается в конец числа.
Полученная таким образом запись является троичной записью искомого числа R.
3. Результат переводится в десятичную систему и выводится на экран.
Например, для исходного числа 1110 = 1023 результатом является число 1021013 = 30710, а для исходного числа 610 = 203 это число 20203 = 6010.
Укажите минимальное число N, после обработки которого с помощью этого алгоритма получается число R, не меньшее 242.
Показать ответ
11
Подсказки (3)
- Рассмотрите последовательно натуральные числа, начиная с наименьших, и для каждого постройте новую троичную запись.
- Если N не делится на 3, найдите остаток r, вычислите 5r и переведите результат в троичную систему.
- Для N=11: 1110=1023, остаток равен 2, а 2⋅5=1010=1013. Получаем R=1021013=30710.
Решение
def s3(n):
if n == 0: return '0'
s = ''
while n>0:
s = str(n%3) + s
n = n//3
return s
m = []
for n in range(1,1000):
b = s3(n)
if n%3==0:
b = b + b[-2] + b[-1]
else:
b = b + s3(n%3*5)
r = int(b,3)
if r>=242:
m.append(n)
print(min(m))Частые ошибки
- Приписывают к троичной записи не троичную запись числа 5r, а его десятичную запись.
- Умножают всё число N на 5 вместо остатка от деления на 3.
- Неправильно переводят получившуюся троичную запись в десятичную систему.
Источник: Открытый банк ФИПИ · openfipi.devinf.ru
Похожие задания
51. Строится троичная запись числа N. 2. Далее эта запись обрабатывается по следующему правилу: а) если число…Троичная запись (остаток × 5)51. Строится троичная запись числа N. 2. Далее эта запись обрабатывается по следующему правилу: а) если число…Троичная запись (остаток × 5) · 09DBE551. Строится троичная запись числа N. 2. Далее эта запись обрабатывается по следующему правилу: а) если число…Троичная запись (остаток × 5) · 0D73A651. Строится троичная запись числа N. 2. Далее эта запись обрабатывается по следующему правилу: а) если число…Троичная запись (остаток × 5) · 6E67FD51. Строится троичная запись числа N. 2. Далее эта запись обрабатывается по следующему правилу: а) если число…Троичная запись (остаток × 5) · CC625151. Строится троичная запись числа N. 2. Далее эта запись обрабатывается по следующему правилу: а) если число…Троичная запись (остаток × 5) · ED8FA7
Нужен репетитор по информатике?
Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.
Готовьтесь к ЕГЭ по информатике в Precettore
Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.