为了账号安全,请及时绑定邮箱和手机立即绑定

逻辑问题????

为什么是s*x,而不是x*x

正在回答

2 回答

x是参数,s赋了初值1,s=s*x就是将1*x,用意为将参数x的值赋给s,下一步计算时s=s*x,此时相当于x*x,后续是一样的。

1 回复 有任何疑惑可以回复我~
#1

慕瓜4294088 提问者

非常感谢!
2018-02-05 回复 有任何疑惑可以回复我~

计算 x 的N次方 = N个x相乘。

def power(x, n):
   s = 1
   while n > 0:
       n = n - 1
       s = s * x
   return s

S存的是中间值。比如power(2,3),  s的值依次为:s=1*2=2, s=2*2=4,   s=4*2 =8.

如果是x*x,x的值不会变,power(2,3),  s的值依次为:s=2*2=4, s=2*2=4,   s=2*2 =4,明显结果不对

1 回复 有任何疑惑可以回复我~
#1

慕妹3355905

为什么n=n-1呢
2018-08-14 回复 有任何疑惑可以回复我~
#2

tp_ysu 回复 慕妹3355905

n表示剩余需要乘以的x的个数,s乘一次x n自然就减少一个啦
2018-10-29 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758623    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

逻辑问题????

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信