【发布时间】:2020-06-20 07:25:23
【问题描述】:
我正在努力学习期中考试并且正在努力解决这个问题。问题是这样的:
求整数指数使得
base**exponent最接近num。 请注意base**exponent可能大于或小于num。 在平局的情况下,返回较小的值。 除了在平局的情况下如何返回较小的值之外,我已经得到了一切。
这是我的代码,函数closest_power(3,12)保持在指数 3 和 2 之间(正确的代码将返回 2)。非常感谢任何帮助
def closest_power(base, num):
exponential = base+num/2
increment = 1
while abs(num-base**exponential) >= 0.01:
print ("Exp: {}, Our number = {}, correct number: {}".format(exponential,base**exponential, num))
if num > (num-base**exponential-2) and num < (num-base**exponential):
return expontential-1
if base**exponential > num:
exponential -= 1
else:
exponential += 1
return exponential
print(closest_power(3,12))
【问题讨论】:
标签: python python-3.x algorithm loops