首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

每日一练:阶乘序列求和

问题:求前n项和:1+2!+3!+4!+5!+......+n!

解题思路:

这么简单,不需要思路吧。

解题源码分享:

# 法一:通过递归实现

deffactorial(n):

ifn

return'Error!Please enter the number that great than zero.'

elifnin(,1):

return1

else:

returnn * factorial(n -1)

defs(k):

ifk

return'Error!Please enter the number that greater than zero.'

elifk ==1:

return1

else:

returnfactorial(k) + s(k -1)

# 法二:通过循环实现

deffun(n):

__sum =

ifn

return'Error!Please enter the number that greater than zero.'

foriinrange(1,n +1):

__f =1

forjinrange(1,i +1):

__f *= j

__sum += __f

return__sum

print(s(10))# 4037913

print(fun(10))# 4037913

补充:

1. Python的变量命名规则:_xxx 单下划线开头的变量,声明是一个protected的变量;__xxx 双下划线开头的变量,声明是一个private变量;__xxx__ 双下划线开头双下划线结尾的变量,是一个内置变量,例如__import__,__init__(不允许定义这样的变量)。

2. Python的函数同变量一样,没有固定的类型,同一个函数可以返回字符串,也可以返回数值,和变量一样相当于“指针”(不同于C/C++的指针,C/C++的指针要声明指针的类型),指向“对象”的指针(Python一切皆对象)。

欢迎在评论区贴出你的代码,一起交流学习。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171208G0WGB900?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券