难以理解具有加法、范围和打印功能的嵌套循环

问题描述 投票:0回答:2

当我将这个 python 代码输入为 12 时,答案是 0, 6, 18。我不知道如何计算它,我一直将其可视化为代码片段 2,答案为 0,0,1,3,6, 6,8,12.

这个循环是如何工作的?

stop=int(input())
result=0
for a in range(5): 
  for b in range(4): 
    result += a * b
  print(result)
  if result > stop: 
    break 

我的计算结果

stop=int(input())
result=0
for a in range(5): 
  for b in range(4): 
    result += a * b
    print(result)
  if result > stop: 
    break 

我的计算图

python loops nested range addition
2个回答
0
投票

我将引导您完成

for a in range(5)
循环。

首先,a = 0,结果 = 0。

  • 循环 4 次,结果仍为 0,因为 0 * b = 0
  • 0 被打印

接下来,a = 1,结果 = 0。

  • 结果 += 1x0 + 1x1 + 1x2 + 1x3
  • 所以结果 = 0 + 6
  • 6 已打印

最后,a = 2,结果 = 6。

  • 结果 += 2x0 + 2x1 + 2x2 + 2x3
  • 所以结果 = 6 + 12 = 18
  • 18 已打印
  • if result > stop
    计算结果为 true,因此循环被中断。

0
投票

输入程序的输出

停止= int(输入())

对于范围(5): 结果 = 0

for b in range(3):
    result += a * b

print(result)

if result > stop:
    break   

输入 10 输出

© www.soinside.com 2019 - 2024. All rights reserved.