python编程判断一个数之间的素数 (python判断一个数是否为素数程序)

今天的问题是:判断101-200之间有多少个素数,并输出所有素数。

这也是C语言的经典问题,我们首先要知道,什么样的数是素数?在数学上的定义:大于1,除了1和它本身不能被其他数整除的数就是素数。那我们从编程角度出发,该怎么解决这个问题呢?

python判断一个数是否为素数的代码,python判断一个数是不是素数代码

思考:

我们这么想:加入有一个数,我们让它除以2,看它是否除的尽,然后与3相除,看是否除的尽,一直这样,到与这个数的前一个数相除,如果都不能除的尽,是不是说明这个数就是一个素数。我们题目讲,在一个区间内,这个简单,我们只要把外层循环开始值换成区间开始值,把外层循环结束值换成区间结束值就行了。

我们首先用C语言实现:我们假设这个区间为888-999

python判断一个数是否为素数的代码,python判断一个数是不是素数代码

#include<stdio.h>
int main(){
	int i,j;
	for(i=888;i<=999;i++){
		for(j=2;j<i;j++){
			if(i%j==0){
				break;
			}
			else{
				if(j==i-1){
					printf("%d\n",i);
				}
			}
		}
	}

python判断一个数是否为素数的代码,python判断一个数是不是素数代码

我们首先用Python实现:我们假设这个区间为888-999

python判断一个数是否为素数的代码,python判断一个数是不是素数代码

import math
h = 0
leap = 1
for m in range(888, 999):
 k = int(math.sqrt(m + 1))
 for i in range(2, k + 1):
 if m % i == 0:
 leap = 0
 break
 if leap == 1:
 print(’%-4d’ % m)
 h += 1
 if h % 10 == 0:
 print(’’)
 leap = 1
print(’%d’ % h)

python判断一个数是否为素数的代码,python判断一个数是不是素数代码