为什么在这样的代码下,输出结果为25

来源:3-13 编程练习

啦啦啦一碗粥

2019-12-15 22:14:41

num = 1
count = 0
while num <= 100:
   if (num % 3 == 0 or num % 7 == 0) and num % 21 != 0 :
       count = count + 1
   else:
       num = num + 1


   num = num + 1

print(count)

 请问加了else,为什么就输出了25,求解答

写回答

1回答

好帮手乔木

2019-12-16

同学你好:

加else和不加else得到符合条件的数字的区别。

http://img.mukewang.com/climg/5df6f74209f89c6315510071.jpg

执行的顺序。不符合条件,执行else里面的代码num=num+1,再执行num=num+1。当执行下一次条件判断时,跳过了一个数。

例如数字8,不符合条件,执行num=num+1-》9,再执行num=num+1-》10。那么到下一次条件判断时,num的值为10,那么符合条件的数字9没有参与判断。

如果我解决了同学的问题,请采纳!学习愉快^_^。

0

0 学习 · 8160 问题

查看课程