2017-10-12 61 views
0

在grok学习上学习python,并且对这个问题有点难住。我需要一个程序来产生这样的输出:用于循环乘法的Python

Enter a negative number: -6 
720 

其计算公式为:-1 x -2 x -3 x -4 x -5 x -6 = -720

我的代码:

n = int(input('Enter a negative number: ')) 
result = 0 
for i in range(-1*n): 
    result = result + i 
print(result) 
+0

'for'循环中的语句必须缩进。 – Barmar

+1

你应该实施的公式是什么?从'0'到'5'添加数字将返回'15'。 – Barmar

+0

感谢您的输入!我应该输入-6和它产生720 -1 x -2 x -3 x -4 x -5 x -6 = 720 – hendro3

回答

0

如果n = 6,则range(-1 * n)0, 1, 2, 3, 4, 5。那些不是你想要的数字,你想要-6, -5, -4, -3, -2, -1。要获得该序列,您应该使用range(n, 0)

而你应该乘以,而不是添加。这也意味着您需要初始化结果1而不是0,因为乘以0始终为0

n = int(input('Enter a negative number: ')) 
result = 1 
for i in range(n, 0): 
    result *= i 
print(result) 
+0

aaaaa我明白了!谢谢!结果= 1是将增量设置为1 – hendro3

+0

不,''range()'默认增加1。 – Barmar

+0

小学阶段算术:如果你用0乘以任何东西,你就得到0.如果你乘数,你必须从'1'开始。 – Barmar