def fact(n):
'''
Calculate 1*2*...*n
>>> fact(1)
1
>>> fact(10)
3628800
>>> fact(-1)
Traceback (most recent call last):
...
ValueError: -1
if n<1:
raise ValueError(n)
if n == 1:
return 1
return n * fact(n-1)
if __name__=='__main__':
import doctest
doctest.testmod()
Sign in to make a reply
四月一日君寻
def fact(n):
'''
Calculate 1*2*...*n
>>> fact(1)
1
>>> fact(10)
3628800
>>> fact(-1)
Traceback (most recent call last):
...
ValueError: -1
'''
if n<1:
raise ValueError(n)
if n == 1:
return 1
return n * fact(n-1)
if __name__=='__main__':
import doctest
doctest.testmod()