python - 如何解决n数上的阶乘偶数,然后将它们相乘
问题描述
例如有 3 则程序将乘以前 3 个阶乘 2 x 4 x 6 = 48。例如,如果用户想要 3,则程序将仅乘以前 3 个阶乘,如果初始值为甚至。类型 int 包含许多需要的偶数,并且将在每个递归中继续增长
称呼:
Print (Value (number, initial))
print(value(3,0))
输出:
48
解释:
前 3 个偶数值是 2、4、6。所以它们相乘的结果将是 48。
抱歉,我的程序有什么问题:
def value(number,initial):
while(initial<=(number)):
print((initial*2), end="")
initial = (initial+1)
print("%d *" %(initial),end='')
return initial * (str(value(number,initial)))
value(3,0)
解决方案
怎么用reduce
?
您可以生成一个range
完整的数字开头,initial
金额是number
from functools import reduce
def value(number, initial):
return reduce(lambda x, y: x * y, range(initial + 2, (initial + 2) + 2 * number, 2))
print(value(3, 0))
# 48
推荐阅读
- linq - 不以指数方式加入所有事情的最佳方法是什么?
- javascript - 使用 raw-loader 为类生产环境禁用 vue.js 网站的热重载
- python - 安装更新 cheetah==2.4.4 出现问题
- python - 如何检查 PyTorch 是否将我的 GPU 与 CUDA 一起使用?
- javascript - 如何从 React Native 中动态创建的 textInput 获取值?
- javascript - Next.Js 带有样式组件的 React 应用程序。警告:道具 `className` 不匹配。服务器:“x” 客户端:“y”
- batch-file - 批处理文件以检查是否正确的用户登录以继续设置,否则打开带有警告的 .txt 以登录另一个用户
- angular - 在 Ngrx 中设置减速器
- javascript - @input 仅在单击按钮时输入新项目
- prestashop - 无法设置商店 URL,Prestashop 1.6 配置摘要中的商店 URL 下没有任何内容