离殇不见伤 发表于 2018-3-2 21:43:51

python写的一个阶乘计算,求评价

n = int(input("输入一个数:\n"))
i = 1
x = n * (n - i)
whilei < n-2:
       i = i + 1
       x = x * (n -i)
print(n,"的阶乘是",x)

南城顾她 发表于 2018-3-2 21:51:37

本帖最后由 南城顾她 于 2018-3-2 21:59 编辑

#递归

def nu(i,a):
    if a > 0:
      i = a * i
      a -= 1
      return nu(i, a)
    else:
      return i


def main():
    n = int(input(''))
    i = 1
    c = nu(i, n)
    print(c)

main()
               

°蓝鲤歌蓝 发表于 2018-3-2 21:53:20

可以的,很6。
可以试试用lambda来写。
t = lambda x:x*(t(x-1)) if x > 1 else x

离殇不见伤 发表于 2018-3-2 22:36:07

°蓝鲤歌蓝 发表于 2018-3-2 21:53
可以的,很6。
可以试试用lambda来写。

还没学过{:10_248:}

离殇不见伤 发表于 2018-3-2 22:37:01

南城顾她 发表于 2018-3-2 21:51
#递归

def nu(i,a):


定义新函数的话,不会占空间的吗

南城顾她 发表于 2018-3-3 09:11:59

离殇不见伤 发表于 2018-3-2 22:37
定义新函数的话,不会占空间的吗

主要以后写编程几乎都是函数所以我只是给你看下,你写的挺好,代码量也少

离殇不见伤 发表于 2018-3-3 12:03:41

南城顾她 发表于 2018-3-3 09:11
主要以后写编程几乎都是函数所以我只是给你看下,你写的挺好,代码量也少

哦哦,好的!
页: [1]
查看完整版本: python写的一个阶乘计算,求评价