Форум » Системы счисления » Задача 3861, что-то странное в условии » Ответить

Задача 3861, что-то странное в условии

Татьяна Сучкова: Задача: Значение выражения [pre2]277 – 311 + 36 – x[/pre2] записали в троичной системе счисления, при этом сумма цифр в записи оказалась равной 24. При каком минимальном x это возможно? Написали программу: [pre2] x = 0 s = 0 while s != 24: x += 1 a = 2 ** 77 - 3 ** 11 + 36 - x s = 0 while a>0: s += a % 3 a = a // 3 print(x) [/pre2] Программа висит (нет ответа). Более того, если подставить для х значение из ответа (6) то сумма цифр сильно более 24.

Ответов - 5

Поляков: Спасибо, исправил опечатки. Должно быть так:[pre2] while s != 22: a = 27 ** 7 - 3 ** 11 + 36 - x[/pre2]

safinim: можно и так uses school; begin (1..100).Where(x->(27bi**7-3bi**11+36-x).tostring.tobase(3).sum(z->z.todigit)=22).First.print end. но в условие нужно добавить слово "положительном" х!

Поляков: safinim пишет: но в условие нужно добавить слово "положительном" х! Спасибо, вы абсолютно правы. Исправлено.


dragon_chicken: Прошу исправить условие задачи (№3861), оно по-прежнему некорректное. Прикладываю мое решение: [pre2] for x in range(0,1000000): a = 27**7 - 3**11 + 36 - x b = 0 c = 22 while a > 0: b+=a%3 a//=3 if b==c: break print(x) [/pre2] На выходе получаю 0. В аналогичной задаче №3862, подставив другие значения, получаю ответ 16(И он является верным) Код аналогичной задачи: [pre2] for x in range(0,100000): a = 64**11 - 4**10 + 96 - x b = 0 c = 71 while a > 0: b+=a%4 a//=4 if c==b: break print(x) [/pre2] Ошибка в моей внимательности

cabanov.alexey: При каком минимальном натуральном x это возможно? 0 - не натуральное число.



полная версия страницы