Python 小练习 阶乘

来源:互联网 发布:sublime mac 卡住 编辑:程序博客网 时间:2024/05/01 12:39

很基础的一道题,不过做得很纠结.....

首先第一个是自己写的函数,不过没有按照课程要求来写,课程要求定义函数变量里面要带有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):
           *= i
        return c






0 0
原创粉丝点击