蓝色部分能不能都解释一下,还有为什么是(a+1,b)

img


实现以下功能:从键盘中输入两个大于0的整数,输出这两个数之间的所有素数。素数又称质数,是指除了1和它本身以外不能被其他整数整除的数。

因为要找a和b之间的素数,不包括a和b,所以从a+1开始
蓝色部分的意思就是拿小于num的数一个个试着去除,如果能整除,就不是素数,如果全部都不能整除,就是素数,打印出来。
比如num=5的时候,就依次除以2、3、4,如果都不能整除,说明5是素数,再进行下一个。
当num=6的时候,除以2能够整除,所以6不是素数,break跳过,继续下一个num

外面的for循环,是让num赋值,从a+1到b。
if判断num是不是1,是1的话就不是素数。
然后for循环,从2开始,(不能从1),到这个数-1为止。(素数定义:被1和自身整除,因为有break,所以不能出现这两个数,不然被看作整除的话就不会被算成素数了)。
for循环的i尝试整除num,如果整除了,num就是合数,如果没有,那么就是素数。
这里的for 和else是一对。因为如果for循环正常结束,才会运行else里面的内容。如果for被break了,那么else就不会运行。

a和b之间的数就是不包含ab,所以不需要对ab判断,从a+1开始判断
如何判断一个数是不是素数,那就从2开始,到这数数的num-1为止所有得数都进行除法运算,如果结果为0说明可以被某个数整除,就不是素数,所以用break跳出循环,继续测试下一个数