Python 将循环输出中的所有数字相乘
我正在尝试用Python创建一个算法,它接受一个输入并打印出所有小于它的数字的倍数。 示例:输入;3. 产出;1*2*3=6 例2:输入;15 产出;1*2*3*4*5*6*7*8*9*10*11*12*13*14*15=1307674368000。欢迎使用堆栈溢出。 我认为这道题没那么难,你应该先自己试一下 下面是一个简单的例子:Python 将循环输出中的所有数字相乘,python,python-3.x,algorithm,Python,Python 3.x,Algorithm,我正在尝试用Python创建一个算法,它接受一个输入并打印出所有小于它的数字的倍数。 示例:输入;3. 产出;1*2*3=6 例2:输入;15 产出;1*2*3*4*5*6*7*8*9*10*11*12*13*14*15=1307674368000。欢迎使用堆栈溢出。 我认为这道题没那么难,你应该先自己试一下 下面是一个简单的例子: def main(arg): ans = 1 for x in range(1, arg+1): ans *= x
def main(arg):
ans = 1
for x in range(1, arg+1):
ans *= x
if x == arg:
print(x, end=' ') # skip the last one
else:
print(x, end='*')
print(f'= {ans}', end='')
if __name__ == '__main__':
try:
arg = int(input())
main(arg)
except:
pass
投入:3
输出:1*2*3=6这等于计算阶乘(n)。我将提供一个简单的递归实现
def recursive_factorial( n ):
if n <= 1:
return 1
return n * recursive_factorial(n - 1)
if __name__ == '__main__':
x = int(input())
print( recursive_factorial(x) )
def递归因子(n):
如果可能,欢迎使用堆栈溢出。理想情况下,问题应该由你自己来尝试,并且已经被搜索过了。“将列表中的所有数字相乘”是谷歌的一个自动完成。这就是为什么我要标记为重复。这不是针对个人的,它只是让寻找答案更有效。你正在尝试计算阶乘。谷歌一下,你会找到很多答案。