题目:输入或者自动生成两个整数,求两个整数之间的所有素数的个数

首先明白素数的定义,质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。0和1既不是质数也不是合数,最小的质数是2。

思路:输入两个整数,也可以随机生成两个整数,从小的那个整数开始,依次判断这个数是不是素数,是的话总数加一。

判断素数的方法:

常规方法:我们只需要从2开始,一直到小于其自身,依次判断能否被n整除即可,能够整除则不是质数,否则是质数。

优化方法:假如n是合数,必然存在非1的两个约数p1和p2,其中p1<=sqrt(n),p2>=sqrt(n)。因此只要找到P1就说明不是素数

请大家晒出各自的算法,可以将结果上传到我们的网站。我们将隔日公布参考答案。

程序截图如下(源码下载

scratch算法练习-素数个数

添加的变量

scratch算法练习-素数个数