N的阶乘拓展 分类: python 小练习 2013-12-12 17:54 289人阅读 评论(0) 收藏
#coding:utf-8
'''
N的阶乘定义为:N!=N×(N-1)×……×2×1
请编写一个程序,输出N的阶乘的十进制表示中从最末一个非0位开始自低位向高位数的第K位。
现在给你N和K(0<=N<=10000,1<=K<=5),请你输出要求的数字(保证存在)。
例如:N=5,K=2,则输出1 note:(5!=120);
N=8,K=3,结果为0 note:(8!=40320)
'''
def main(n):
g=lambda k,j:k*j
#注意此处是range(1,n+1)
return reduce(g,range(1,n+1))
def getvalue(n,k):
total= main(n)
print total
s=str(total).rstrip('0')
print s[-k]
if __name__ == '__main__':
getvalue(5,2)
版权声明:本文为博主原创文章,未经博主允许不得转载。