|
|
15鱼币
本帖最后由 屁哥 于 2018-2-17 21:01 编辑
- def power(x, y):
- if y:
- return x * power(x, y-1)
- else:
- return 1
-
- print(power(2, 3))
复制代码
用递归的形式 写出 x的 y 次幂 第22课 课后题
return x * power(x, y-1) 这句没理解 求个注释 和解析过程 白天问了这个问题 还是没整明白
return 1这句也没理解
我们是要用递归来写出幂的运算,首先我们要想出幂的本质,x的y次幂其实就是y个x相乘,我们知道x的零次幂是1,那x的一次幂就是x乘x的零次幂,也就是一个x,x的两次幂就是x乘x的一次幂,也就是两个x相乘,x的三次幂也就是x乘x的两次幂,也就是三个x相乘,以此类推,这就是return x * power(x, y-1)的含义,y个x相乘,就是x乘以(y-1)个x相乘的结果。
|
最佳答案
查看完整内容
我们是要用递归来写出幂的运算,首先我们要想出幂的本质,x的y次幂其实就是y个x相乘,我们知道x的零次幂是1,那x的一次幂就是x乘x的零次幂,也就是一个x,x的两次幂就是x乘x的一次幂,也就是两个x相乘,x的三次幂也就是x乘x的两次幂,也就是三个x相乘,以此类推,这就是return x * power(x, y-1)的含义,y个x相乘,就是x乘以(y-1)个x相乘的结果。
|