图片的执行结果应该是第二段程序的执行结果,它省略了中间的一些输出数字。
第二段程序执行的结果是满足以下条件的数:首先是在2到99之间,然后如果大于2且小于它自身的数从头开始有一个不能整除它的,则输出这个数(2除外),但是如果有整除的则不输出,满足这个条件的数输出的个数是从2开始且小于它自身,有几个连续不能整除它的数。
例如:3这个数,小于它的数只有2, 2不能整除3,则3输出1次。
4,小于它的有:2,3,从2开始判断,2可以整除4,if满足,break退出循环,4就没有输出了。
然后5, 小于它的数有:2,3,4 ,从2开始判断,2,3,4都不能整除5,if都没执行,后面的输出就执行了3次,所以5就输出了3次。
所以,当前的数,从2开始且小于它自身,有几个连续不能整除它的数,这个数就输出几次。
第一段执行的结果是输出2到99之间所有的数,每行一个。
注释如下:
print("第一段的结果为:")
# 第一段代码
for n in range(2,100): # 遍历2到99之间的每一个整数
if n==2: # 如果当前的数等于2,则打印它,然后开始下一个数
print(n)
continue
# 这个循环没有很多实际作用,因为if判断后没有进行输出
for i in range (2,n): # 遍历2到n-1之间的每一个数
if (n%i)==0: # 如果n可以整除这区间的每一个数,则退出循环
break
# 打印n的值 ,因为前面这个for循环对输出产生影响,所以这里就会直接打印出2到99之间的每一个整数
print(n)
print("\n第二段的结果为:")
# 第二段代码
for n in range(2,100): # 遍历2到99之间的每一个整数
if n==2: # 如果n等于2,则打印它,然后开始判断下一个数
print(n)
continue
for i in range (2,n): # 遍历2到n-1之间的每一个数
# 如果n可以整除区间的任意一个数,则退出循环
if (n%i)==0:
break
# 如果当前区间的数不能整除n,则输出n
print(n)