Python求出0~100以内的所有素数

yipeiwu_com5年前Python基础

质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。

一、判断一个数是否为素数:

基于定义

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

考虑合数的性质

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以内的素数

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以内的素数

代码如下所示:

#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以内的所有素数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

python用户评论标签匹配的解决方法

python用户评论标签匹配的解决方法

我们观察用户评论发现:属性词往往和情感词伴随出现,原因是用户通常会在描述属性时表达情感,属性是情感表达的对象。还发现:属性词和专用情感词基本都是名词或形容词(形谓词)。 算法流程图如下:...

python 动态加载的实现方法

脚本语言都有一个优点,就是动态加载。lua语言有这个优点,python也有这个特性。说简单点就是,如果开发者发现自己的代码有bug,那么他可以在不关闭原来代码的基础之上,动态替换模块。替...

python日志记录模块实例及改进

python 打印对象的所有属性值: def prn_obj(obj): print '\n'.join(['%s:%s' % item for item in obj.__d...

Python中如何将一个类方法变为多个方法

Python中如何将一个类方法变为多个方法

前一篇文章《Python 中如何实现参数化测试?》中,我提到了在 Python 中实现参数化测试的几个库,并留下一个问题: 它们是如何做到把一个方法变成多个方法,并且将每个方法与相应的参...

python取余运算符知识点详解

python取余运算符是什么? python取余运算符是%,即表示取模,返回除法的余数。 假设变量: a=10,b=20: 那么b % a 输出结果 0 注: Python语言支持以下类...