judgecx 发表于 2019-10-14 19:15

如何用python for计算

python 如何用 for 计算出 1+1*2+1*2*3+1*2*3*4+1*2*3*4*5 的结果新手 希望各位大佬不要来那么深奥的代码 谢谢

拎壺沖 发表于 2019-10-14 19:34

有个思路,将你要算的最大的数值定义个数组,比如你要的最大乘数为100,那么定义个1到100的数组A,用个变量X做为数组A的下标,A,用循环控制下标变化每次+1 ………………

judgecx 发表于 2019-10-14 19:38

拎壺沖 发表于 2019-10-14 19:34
有个思路,将你要算的最大的数值定义个数组,比如你要的最大乘数为100,那么定义个1到100的数组A,用个变量 ...

能否写下代码吗

Mr.Chu 发表于 2019-10-14 19:42

total = 0
last_num = 1
for num in range(5):
    last_num = last_num * (num + 1)
    total += last_num
print(total)

ghsfwy 发表于 2019-10-14 19:45

不错不错

我心飞翔1995 发表于 2019-10-14 19:56

from functools import reduce
sum()

howinbobo 发表于 2019-10-14 19:58

temp=input('请输入您要计算的数: ')
n=int(temp)
c=1
sum1=0
i=1
while n>=i:
    c=c*i
    sum1=c+sum1
    i+=1
print(sum1)

#用while函数可以轻松实现您的要求

judgecx 发表于 2019-10-14 20:00

Mr.Chu 发表于 2019-10-14 19:42
total = 0
last_num = 1
for num in range(5):


能讲解一下么还是有点不懂。{:1_936:}

Mr.Chu 发表于 2019-10-14 20:16

judgecx 发表于 2019-10-14 20:00
能讲解一下么还是有点不懂。

{:1_925:} total是总和,last_num是循环中序列数+1的阶乘,第一个数是1!,第二个数是2!,循环5次分别是1!,2!,3!,4!,5!,加起来不就是你题目的求和数嘛- -

天空宫阙 发表于 2019-10-14 22:41

本帖最后由 天空宫阙 于 2019-10-14 22:43 编辑

# 计算num的阶乘
def muti_each(num):
    total = 1
    for each in range(1,num+1):
      total= total*each
    return total

# 原式即计算1到5的5个阶乘的和
sum = 0
for i in range(1,6):
    sum += muti_each(i)

print(sum)
页: [1] 2
查看完整版本: 如何用python for计算