python - 如何找到数字的最高数根
问题描述
n = 64
#Find (root,power) 1 < power < 6
answer = None
for power in range(2,6):
for root in range(2,6):
if root ** power == n:
answer = (root,power)
break
elif root**power > n:
break
if answer != None:
break
print('The root',root,'and power =',power,'equals',n)
根 4 和幂 = 3 等于 64
答案吐出 4,3,但我希望它给我 8,2(可能的最高根)
解决方案
n = 64
#Find (root,power) 1 < power < 6
answer = None
for root in range(n,2,-1):
for power in range(2,6):
if root ** power == n:
answer = (root,power)
break
elif root**power > n:
break
if answer != None:
break
print('The root',root,'and power =',power,'equals',n)
推荐阅读
- c - 如何静态断言浮点是 C 中的 IEEE-754?
- java - 从eclipse动态部署Tomcat上的项目
- swift - 如何在一个 CollectionViewController 中查看我的所有聊天室?
- maven - 文档的生成应该在父模块还是模块中完成?
- android - 动态布尔表达式变量和布尔函数的区别
- razor - 剃刀中的文本框宽度
- java - 在 Intellij“从原型创建项目”向导中显示自定义原型属性
- python - 运行 jaydebeapi 时 python 崩溃
- c++ - 连接元组作为类型
- c++ - OpenSSL 解密 - EVP_DecryptFinal_ex 失败