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

Python 小练习 阶乘

2016-06-23 14:27 316 查看
很基础的一道题,不过做得很纠结.....

首先第一个是自己写的函数,不过没有按照课程要求来写,课程要求定义函数变量里面要带有x变量,不顾我自己写的没有,不过功能上测试是正常的

def factorial():

sum=1

x=int(input('please enter:'))

if x<0:

print ('wrong')

elif x==0 or x==1:

return 1

else:

for i in range(1,x+1):

sum = sum*i

print (sum)

factorial()

---------------------------------------------------------------------------------------分割线---------------------------------------------------------------------------------------------------------------------------------------

下面是看到网上别人用递归做的函数,也是题目本身要求的功能

def factorial(x):

if x<0:

print ('wrong enter')

elif x==0 or x==1:

return 1

else:

return x*factorial(x-1)

---------------------------------------------------------------------------------------分割线---------------------------------------------------------------------------------------------------------------------------------------

还有其他用循环实现的,写得也比我简介,不过没考虑到负数的情况

def f(n):

c = 1

for i in range(n+1):

c *= i

return c


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