HDP1008 发表于 2020-5-27 16:02:48

这俩个代码有什么区别么,为何我的运行结果不对呢

为何我的运行结果不对呢
我的:
num=int(input("请输入一个数:"))
factiorial=1

if num<0:
   print("负数没有阶乘")
elif num==0:
   print(num,"的阶乘是1")
   
else:
   for i in range(1,num+1):
      factiorial=factiorial*i
      print (num,"的阶乘为",factiorial)
   

参考:
num = int(input("请输入一个数字: "))
factorial = 1

# 查看数字是负数,0 或 正数
if num < 0:
   print("抱歉,负数没有阶乘")
elif num == 0:
   print("0 的阶乘为 1")
else:
   for i in range(1,num + 1):
       factorial = factorial*i
   print("%d 的阶乘为 %d" %(num,factorial))

ouyunfu 发表于 2020-5-27 16:06:19

本帖最后由 ouyunfu 于 2020-5-27 16:08 编辑

你的print (num,"的阶乘为",factiorial) 缩进有问题,已经帮你改正num=int(input("请输入一个数:"))
factiorial=1

if num<0:
   print("负数没有阶乘")
elif num==0:
   print(num,"的阶乘是1")
   
else:
   for i in range(1,num+1):
      factiorial=factiorial*i
   print (num,"的阶乘为",factiorial)过来

qiuyouzhi 发表于 2020-5-27 16:06:39

你的print怎么跑到for循环里面了...

HDP1008 发表于 2020-5-27 16:11:16

qiuyouzhi 发表于 2020-5-27 16:06
你的print怎么跑到for循环里面了...

原来如此
页: [1]
查看完整版本: 这俩个代码有什么区别么,为何我的运行结果不对呢