2016-07-14 38 views
0

在UVA提交代码,这是我的问题没有623码(500!)运行时错误而使用python

def fact(n): 
    ans=1; 
    for i in range (1,n+1): 
     ans=ans*i; 
    return ans; 

while(True): 
    n=input() 
    if not n: 
     break 
    n=int(n) 
    print (str(n)+"!") 
    print (fact(n)) 

它使运行时错误在UVA判决,但运行良好的电脑

回答

1

input()导致一个EOFError。做

try: 
    n=input() 
except EOFError: 
    break 

,而不是

n=input() 
if not n: 
    break