您的位置:首页 > 编程语言 > Python开发

Python练习之-----求阶乘练习题

2018-01-29 17:12 295 查看
“””

整数的阶乘(英语:factorial)是所有小于及等于该数的正整数的积,0的阶乘为1。即:n!=1×2×3×…×n

“”“

#/usr/bin/python3
# -*- coding: UTF-8 -*-
"""
用户输入一个整数,计算其阶乘结果
"""
num = int(input("请输入一个整数:"))
factorial = 1
if num < 0:
print("负数没有阶乘!")
elif num == 0:
print("零的阶乘是1")
else:
for i in range(1,num + 1):
factorial = factorial * i
print("%d的阶乘为:%d" %(num,factorial))


空格报错:



字符串报错:



这段代码,对于输入为空和字符串时,直接报错,未作出异常处理

下面针对为空和字符串时,作出异常处理

#/usr/bin/python3
# -*- coding: UTF-8 -*-
"""
用户输入一个整数,计算其阶乘结果
针对为空和字符串的输入,作出异常处理
"""
while True:
try:
num = int(input("请输入一个整数:"))
factorial = 1
if num < 0:
print("负数没有阶乘!")
elif num == 0:
print("零的阶乘为1")
else:
for i in range(1,num + 1):
factorial = factorial * i
print("%s的阶乘为:%s" %(num,factorial))
break
except ValueError:
print("这不是一个有效的整数,请重新输入!")


对于为空和字符串时,抛出异常处理:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: