Python练习:阶乘求和

要求:输入n 之后返回从1到n的阶乘的和的后六位(不含前导0)

思考与实践:首先我们先用input来获取输入的数值,之后我们定义一个函数来实现阶乘的计算,用一个for in 将n及n以内的数遍历出来,之后将他们相乘。之后我们再用for in来遍历n及n以内的数,之后我们用该函数来求出他们各自的阶乘再将其相加。最后我们先判断长度看是否有六个数,要是有的话就直接print其取整,防止前部为0。若比6长度短则返回提示。

n=input()
def fact(x):
    ans=1
    for i in range(1,int(x)+1):
        ans=ans*i
    return(ans)
sum=0
for q in range(1,int(n)+1):
    sum=fact(q)+sum
sum1=str(sum)
if len(sum1)>=6:
    print(int(sum1[-6::]))
else:
    print("输出的结果位数小于6")

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值