Задача.
- На вход алгоритма подается натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится троичная запись числа N.
2. Если N кратно 3, то в конец записи дописываются три последние цифры числа.
3. Если N не кратно 3, то остаток от деления умножается на 3, переводится в троичную систему и затем дописывается к числу.
Полученная таким образом запись является троичной записью искомого числа R.
Укажите минимальное число N, после обработки которого автомат получает число, большее 150.
def f(n):
s=''
while n>0:
s=str(n%3)+s
n//=3
return s
c=set()
for n in range (0,100):
s=f(n)
if n%3==0:
s=s+s
else:
s=s+f((n%3)*3)
r=int (s,3)
if r>150:
c.add(n)
print (min©)
Ошибка: Traceback (most recent call last):
File “/home/teacher/1.py”, line 14, in <module>
r=int (s,3)
ValueError: invalid literal for int() with base 3: ''