也许你早就知道阶乘的含义,N阶乘是由1到N相乘而产生,如:
12!=1*2*3*4*5*6*7*8*9*10*11*12=479001600
12!=1×2×3×4×5×6×7×8×9×10×11×12=479001600
12的阶乘最右边的非零位为6
写一个程序,计算N阶乘的最右边的非零位的值。
注意:10000000!
10000000! 有2499999
2499999个零。
输入格式
仅一行包含一个正整数N
输出格式
一个整数,表示最右边的非零位的值。
输入12
输出6
num = int(input()) tot = 1 for i in range(1,num+1): tot *= i for j in tot: if j != 0: print(j) break
num = int(input()) tot = 1 for i in range(1,num+1): tot *= i tot = str(tot) for j in tot: if j != 0: print(j) break
num = int(input()) tot = 1 for i in range(1,num+1): tot *= i tot = str(tot) for j in range(len(tot)): if tot[len(tot)-j-1] == '0': continue else: print(tot[len(tot)-j-1]) break
num = int(input()) tot = 1 for i in range(1,num+1): tot *= i tot = str(tot) for j in range(len(tot)): if tot[len(tot)-j] != '0': print(tot[len(tot)-j]) break