这个python要怎么编写啊(可以使用 if i%2==1)
sum =1
total = 0
for(i=1;i<=9;i++) :
sum = 1
if(i %2 == 1):
for(j=1;j<=i;j++):
sum=sum*j
total = total + sum
print(total)
def Func3(n):
from math import factorial
if n >= 0: return factorial(n)
else: print('出错')
sum=0
for i in range(1,10):
#print(i)
if i%2==1:
sum = sum+Func3(i)
print(sum)
如果有帮助请点一下我回答右上方的采纳,谢谢!以后有什么问题可以互相交流。
// 方案一
L = [1, 3, 5, 7, 9]
def func(n):
if n == 1:
return 1
else:
return n * func(n-1)
total = 0
for i in L:
total = total + func(i)
print(total)
// 或用递归思路也可以实现
def func(n):
return 1 if n == 1 else n * func(n-1)
sum([func(i) for i in [1, 3, 5, 7, 9]])
遍历获取10以内奇数然后计算阶乘和
from math import factorial
sum=0
for i in range(10):
if i%2==1:
sum+=factorial(i)
print(sum)
应该是 s=1!+3!+5!+7!+9! 吧
range(1,10,2)第三个参数每次增加2,就是1,3,5,7,9。
def p(x):
if x == 1:
return 1
return x * p(x-1)
s = 0
for i in range(1,10,2):
s += p(i)
print(s) #输出 368047
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
代码:
#!/usr/bin/env python3
# coding=utf-8
#定义阶乘的值
jc = []
for i in range(1,10):
if len(jc) >= 1:
jc.append(i*jc[-1])
else:
jc.append(i)
#计算s的值:
sum = 0
for s in [1,3,3,5,7,9]:
num = jc[s-1]
sum += num
print(sum)
测试结果:
(base) [root@theThree 7430584]# time python sum.py
368053
real 0m0.029s
user 0m0.024s
sys 0m0.005s
(base) [root@theThree 7430584]#