python中的一个数字的阶乘,使用for循环和while循环

时间:2018-06-05 12:03:17

标签: python

我运行了代码,但没有输出

var =     int(input("Enter A Number"))


if(var<=0):

print("Invalid number")

product = 1


for i in range(var):

product*=var

var-=1


while(var==0):

print(product)

break

为什么它没有执行,没有结果呢?

  

O / P:输入A号3

     

处理完成,退出代码为0

1 个答案:

答案 0 :(得分:1)

除了缩进之外,您没有看到任何结果,因为您的代码没有输出结果。您的测试以var == 3开头。然后代码执行var -=1,这意味着它具有值2print()调用包含在while循环中,如果product将永久打印var == 0,否则将不执行任何操作,因为在这种情况下,循环永远不会输入。我怀疑您应该采用两种方式实施计算,一种方法使用for,另一种方式使用while