数字a是b的幂,如果它可被b整除,a / b是b的幂.
编写一个名为is_power的函数,它接受参数a和b,如果a是b的幂,则返回True.
def is_power(a,b): c = a/b if (((a%b) == 0) and ((c%b) == 0)): return True else: return False
以上是我的解决方案,但系统提示我概括我的解决方案.
谁能告诉我我的解决方案有什么问题?
当你想要解决这样的问题时,你应该始终从琐碎的案例开始.在这种情况下,有两种情况:is_power(x,x)和is_power(1,x) – 答案都是True,因为x ** 1 == x和x ** 0 == 1.
一旦涵盖了这些案例,您只需要记下定义的其余部分.编写(a可被b整除)和(a / b是b的幂)的代码并将它们放在一起.
最终的功能如下所示:
def is_power(a,b): if <trivial case 1> or <trivial case 2>: return True # its a recursive deFinition so you have to use `is_power` here return <a is divisible by b> and <a/b is a power of b>
剩下的唯一问题是如何回答< a / b是b的力量>.最简单的方法是使用函数is_power本身 – 这称为递归.
总结以上是内存溢出为你收集整理的python – 找出a是否是b的幂全部内容,希望文章能够帮你解决python – 找出a是否是b的幂所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)