Как проверить, является ли число A кубом какого-то натурального числа?

8 года назад от Shlep Ushlep

1 ответ

0 голосов
У кубов конечно есть какие-то особые теоретикочисловые свойства, но на практике, самый быстрый способ проверить, - это вычислить кубический корень, округлить к целому, возвести в куб и сравнить с исходным числом.
Этот способ не годится, если число очень велико.
Как найти кубический корень, если нельзя использовать вычисления с плавающей точкой? Бинарным поиском:
def find_cube_root (n) :
 lo = 0
 hi = n
 while lo hi:
 mid = (lo+hi) /2
 if mid*3 n:
 lo = mid
 else:
 hi = mid
 return lo
8 года назад от Маша Дорогова

Связанные вопросы