质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。
一、判断一个数是否为素数:
基于定义
1
2
3
4
5
6
7
8
|
def is_prime(num):
if num < = 1 :
return '%d是一个合数' % num
for i in range ( 2 , num):
if not num % i:
return '%d是一个合数' % num
else :
return '%d是一个素数' % num
|
考虑合数的性质
1
2
3
4
5
6
7
8
|
def is_prime(num):
if num < = 1 :
return '%d是一个合数' % num
for i in range ( 2 , int (num / 2 ) + 1 ):
if not num % i:
return '%d是一个合数' % num
else :
return '%d是一个素数' % num
|
二、求出0~100以内的素数
1
2
3
4
5
6
7
8
9
10
11
|
def all_prime(num):
lst = []
if num < = 1 :
return '0 ~ %d以内没有任何素数' % num
for i in range ( 2 , num + 1 ):
for j in range ( 2 , int (i / 2 ) + 1 ):
if not i % j:
break
else :
lst.append(i)
return lst
|
ps:下面看下小编写的C语言求1-100以内的素数
代码如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#include <stdio.h>
#include <math.h>
void main()
{
for ( int i = 1; i <= 100; ++i)
{
int j = 2;
for (; j<=sqrt(i); ++j)
{
if (i%j == 0)
break ;
}
if (j>sqrt(i) && i != 1)
printf( "%d " , i);
}
system( "pause" );
}
|
总结
以上所述是小编给大家介绍的Python求出0~100以内的所有素数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:https://www.jianshu.com/p/d6c98e1944c2