【python】while循环多个语句
当执行至i=i+1 此时i等于3,进入第一个while循环--i<100 true--进入循环体 此时j还是2么?
如果此时i=3,j=2,进入第二个while循环-- 2=j<=i/j=3/2 false--执行if语句打印 3,是素数,并执行i=i+1 i成为4
当i=4,进入第一个while循环--i<100 true--进入循环体 此时j=2,进入第二个while循环--2=j<=i/j=4/2=2--true--执行if not中i是否整除j语句,i整除j成功,非break,进入j+1语句,此时j=3,执行if(j>i/j)语句,3>(4/3),应该输出4,是素数,但实际上4不是素数。
我哪里想错了 请指教
补充图片
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
你好,你的错误出现在,当i=4,j=2时,执行if not中i是否整除j语句,i整除j成功,返回0, 所以执行break.其他的,你应该清楚了
推荐 Pythontutor 可视化一步步调试,你自己就能知道哪里出错了。