所谓素数是指除了1和它本身以外,不能被任何整数整除的数,例如17就是素数,因为它不能被2~16的任一整数整除。因此判断一个整数m是否是素数,只需把m被2~m-1之间的每一个整数去除,如果都不能被整除,那么m就是一个素数.
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
int main()
{
int i, n;
for (n = 100; n <= 200; n++)
{
for (i = 2; i <= n - 1; i++)
{
if (n % i == 0)
break;
}
if (i >= n)
printf("%d\t", n);
}
system("pause");
return 0;
}
另外判断方法还可以简化。m不必呗2~m-1之间的每一个整数去除,只需被2~√m之间的每一个整数去除就可以了。如果m不能被2~√m间任一整数整除,m必定是素数。
~~~c
include
include
include
-- coding: utf-8 --
import math
def is_prime(value):
ret = 0
k = int (math.sqrt(value))
for i in range(2,k+1):
if value%i ==0:
break
if i> math.sqrt(i):
ret = 1
return ret
for i in range(100,201):
if is_prime(i) == 1:
print (‘{0}是素数’.format(i))
~~~