要求:限制输入的数据在1-10之间无效数据进行提示结束程序。要求分别使用递归和循环分别实现。输出结果如:4!=1234=24
使用递归实现:
def factorial_recursive(n):
if n < 1 or n > 10:
print("输入的数据无效,请输入1-10之间的数字!")
return
if n == 1:
return 1
else:
return n * factorial_recursive(n-1)
n = int(input("请输入一个1-10之间的数字:"))
result = factorial_recursive(n)
if result:
print(f"{n}! = ", end="")
for i in range(1, n+1):
if i != n:
print(f"{i}*", end="")
else:
print(f"{i} =", end="")
print(result)
使用循环实现:
def factorial_loop(n):
if n < 1 or n > 10:
print("输入的数据无效,请输入1-10之间的数字!")
return
result = 1
for i in range(1, n+1):
result *= i
return result
n = int(input("请输入一个1-10之间的数字:"))
result = factorial_loop(n)
if result:
print(f"{n}! = ", end="")
for i in range(1, n+1):
if i != n:
print(f"{i}*", end="")
else:
print(f"{i} =", end="")
print(result)
``
原文地址: http://www.cveoy.top/t/topic/hyUz 著作权归作者所有。请勿转载和采集!