请编写一个程序,实现给定数的阶乘。输入输出界面格式要求:
请输入一个整数:0.5
你输入的不是一个整数!
请输入一个整数:8
8的阶乘为:40320,是否继续输入(y/n)y
请输入一个整数:3
3的阶乘为:6,是否继续输入(y/n)n
程序运行完毕,按任意键退出!
代码如下:
def fun(n):
result =1
for i in range(1,n + 1):
result= result*i
return result
while True:
num= input('请输入一个整数:')
#if type(x)== int:
try:
n1=eval(num)
except:
print('输入的非数字程序结束')
break
if isinstance(n1, float):
print('你输入的不是整数!')
continue
else:
result= fun(n1)
print('%d的阶乘为:%d'%(n1, result))
x= input('是否继续输入(y/n)')
if x=='y':
continue
elif x=='n':
print('程序运行结束,按任意键退出!')
break