Python如何寻找100万以内的所有素数

如题,新手刚刚学习编程知识,没有任何编程经验,最近刚刚学习Python,对Python比较感兴趣,求高手解答。

7个回答

不会python,用Java的只要用两个for循环嵌套下就行吧,不过数字比较大,建议用个map存储下非素数的情况做个判断,这样程序会优化点。

素数:大于1的整数,除了1和他本身再无其他因数

def sushu(n):
for i in range(1,n+1):
list = []
for j in range(2,n+1):
if i%j == 0:
list.append(i)
if len(list) == 1:
print(i)

sushu(1000000)

def sushu(n):
for i in range(1,n+1):
list = []
for j in range(2,n+1):
if i%j == 0:
list.append(i)
if len(list) == 1:
print(i)
sushu(1000000)

如果是要寻找这么大的数据的话,建议用素数筛法。

筛法做,但是要用迭代器生成,很担心出现内存问题啊。

廖雪峰的Python教程里有,菜鸟教程里也有例子

用Java吧,自定义Collector收集器能在一秒内完成百万级素数筛选打印

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Python打印100以内所有素数
定义:质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数,否则称为合数。 编程思路:对于正整数n,如果用2到 sqrt(n)+1 之间的所有整数去除,均无法整除,则n为质数。 python代码如下: from math import sqrt #定义素数判断函数 def is_prime(n): if n == 1: return
python之求解100以内的所有素数
1.贴题 题目来自PythonTip 求解100以内的所有素数 输出100以内的所有素数,素数之间以一个空格区分(注意,最后一个数字之后不能有空格)。 2.说明 很简单粗暴的一道题。知识点整理如下: 判断素数,函数或一般语句均可 100以内,设置循环上限 输出格式要求 3.参考代码 import math #导入math库,以便使用里面的一个求平方根的函数...
求100以内的所有素数
素数:指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。 [code="java"] public class Demo { public static void main(String[] args) { int i = 2; while(i...
Python遍历100以内素数
刚开始编程不久就被这道题目难住,百度搜索了一下发现给出的推荐代码都是些什么啊?! 国内GitHub网速慢,其他代码网站封的封,卡的卡,真心佩服在中国梦下的网络建设。(/尴尬脸) 所以我只能死缠烂打自己动脑筋 终于在想了快一个小时的时候知道了答案 下面给出代码: import math results = [] for i in range(2,101): results.appe...
python 求100以内素数
def is_prime(n): if n == 1: return False for i in range(2, n//2 + 1): if n % i == 0: return False return True print(filter(is_prime, range(1, 101))) 顺
100万以内的素数表
100万以内的素数表
shell编程判断100以内所有素数(质数)
echo -n "please enter number:" read n declare -I a for((i=1;i<=n;i++)) do for((x=1;x<=i;x++)) do b=$(( $i%$x )) if [[ $b -eq 0 ]]; then a=$a+1 fi done if [[ $a -...
100以内的所有素数c代码
100以内的所有素数c语言代码 //100以内的所有的素数 #include <stdio.h> int main(int argc, char *argv[]) { int num,i,count; for(num=1;num<=100;num++){//外层循环 //输出num的所有约数 count=0; for(i=1;i<=num;i++)//内层循环 { if(num%i==0) count++; } if(count==2) printf("%d\n",num); } return 0; }
java编程:求100以内的所有素数
public class 第二题 { public static void main (String args[]){ int a; System.out.print('2');//2是最小的素数 for(int i=3;i { a=0; for(int j=2;j { if(i%j==0) { a=1; break; } } if(a==0) System.o
打印出100以内的所有素数
int flag, i, j; for (i = 1; i <= 100; i++) { flag = 1; for (j = 2; j < i; j++) { if (i % j == 0) { flag = 0; brea
判断并输出100以内的所有素数
#include <stdio.h> #include <math.h>int prime(int num) { int i; int flag=0; //定义标志位 int k = sqrt(num); for(i = 2; i <= k; i++)//判断这个数是否为素数 { if(num % i == 0) {
输出1~100以内的所有素数
/***************************************************** copyright (C), 2014-2015, Lighting Studio. Co., Ltd. File name: Author:Jerey_Jobs Version:0.1 Date: Description:输出100以内的素数. Funcion Li
c语言编写100以内的所有素数
可以求100 以内的所有素数,可以通过代码中的100改成其他的整数,可以求道其他整数以内的素数
100以内的素数
通过C++语言编程,其功能是输出的数为小于100以内的素数!
100以内素数
求100以内素数的C语言代码,方便快捷,使用简单,运行即可
求100以内的素数
public static void main(String[] args) {        for(int i=2;i&amp;lt;100;i++) {            for(int j=2;j&amp;lt;i;j++) {                if(i%j==0) {                    break;                }                i...
//输出100以内的素数
/** 质数又称素数。一个大于1的自然数,除了1和它自身外,不能整除其他自然数的数叫做质数;否则称为合数。 */ public class T27 { public static void main(String[] args) { for(int i=1;i&amp;lt;=100;i++ ){//循环1到100的整数 for(int j=2;j&amp;lt;=i;j++){//从2开始比循环a小的数 if...
100以内素数之和
描述: 求100以内所有素数之和并输出。 ‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬ 素数指从大于1,且仅能被1和自己整除的整数。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬...
输出100以内的素数
#include &quot;stdafx.h&quot;#include&amp;lt;iostream&amp;gt;using namespace std;int _tmain(int argc, _TCHAR* argv[]){ int b; for (b = 2; b &amp;lt; 100; b++){ bool prime = 1; for (int i = 2; i &amp;lt; b; i++) { if (b%i ...
100以内素数问题
求100以内所有的素数~
打印100以内的素数
public class SuShu { public static void main(String[] args) { int count=0; for (int i=2;i&amp;lt;=100;i++){ if (isSuShu(i)){ System.ou...
go 100以内素数
package main import &quot;fmt&quot; func main() { var count int = 1 var flag bool for count &amp;lt; 100 { count++ flag = true for tmp:=2;tmp&amp;lt;count;tmp++{ if c...
求100以内的素数?
import java.applet.*;rnimport java.awt.*;rnpublic class PrimNumber1 extends Appletrnrn public void paint(Graphics g)rn rn int sum=0,i,j;rn for (i=1; i<=100; i++)rn rn for (j=2; j<=i/2; j++)rn rn if (i%j==0)rn rn break;rn rn if (j>i/2)rn rn g.drawString("素数:"+i,10,20);rn rn rn rn rnrn请问各位大侠,这个程序怎么算不出来100以内的素数呢?
100以内素数代码
for (int i = 2; i &lt;=100;i++) { for ( int k = 2; k&lt;=i;k++) { if (i%k == 0&amp;&amp; i != k) { ...
100以内素数和问题
[code=java]rnpublic class Test rn public static void main(String[] args) rn int sum = 0;rn for (int i = 2; i < 100; i++) rn for (int j = 2; j <= i; j++) rn if (i%j == 0 && i!=j) rn break;rn else if (j>i/2) //这一句看不懂rn sum = sum +i;rn break;rn rn rn rn rn rn[/code]
100以内的素数和问题
求100以内的素数和问题: import java.util.Scanner; public class SuShu { public static void main(String[] args) { int n,sum = 2; System.out.println(&quot;输入一个正整数(&amp;gt;2):&quot;); Scanner sc = new Scanner(System.in);...
求100以内素数
/***************************************************** copyright (C), 2014-2015, Lighting Studio. Co.,     Ltd. File name: Author:Jerey_Jobs    Version:0.1    Date: Description: Funcion List:
求100以内的素数和
描述 求100以内的素数之和并输出。 a=0 for i in range (2,101): for n in range(2, i-1): if i % n == 0: #判定非素数 break #非素数,则跳出 else: #...
算法 -- 100以内的素数
#include &amp;lt;stdio.h&amp;gt; #include &amp;lt;stdlib.h&amp;gt; #define N 100 int main(int argc, const char *argv[]) { int i,j; int num[N]; for (i = 2; i &amp;lt; N; i++) num[i] = 1; for...
100以内的素数问题
[code=C/C++]rn#include "math.h"rnmain()rnrn int i,n;rn for(n=2;n<=100;n++)rn rn for(i=2;i=n)printf("\t%d",n);rn rnrn[/code]rn求100以内的素数,这个程序可以正常运行,在第二个for循环里,已经有了条件i=n),同时i>=n在求素数的算法里是怎么理解的rn还有另外一个程序rn[code=C/C++]rn#include "math.h"rnvoid main()rnrn int n,i,k;rn for(n=3;n<=100;n+=2)rn rn k=sqrt(n);rn for(i=2;i<=k;i++)rn if(n%i==0)break;rn if(i>k)printf("\t%d",n)rn rnrn[/code]rn为什么用2~sqrt(n)之间的数去除就可以判断了,第二个if(i>k)这个条件是怎么理解的
关于100以内的素数。
刚起步学习C。就是有时间看一下的那种。rn今天遇到了一个问题。rn教程上的例子。rnmain()rnrn int m,n,i,prime;rn i=0;rn for(m=2;m<=100;m++)rn prime=1;rn for(n=2;n
100~200以内的素数
//100~200以内的素数 #include <stdio.h> main() { int i,j; for(i=101;i<200;i++) { for(j=2;j<i;j++) { if(i%j==0) { break; } } if(i==j) printf("%d是素数\n",i); } }
求出100以内的素数
求出100以内的素数,并将这些数在屏幕上5个一行的显示出来。
相关热词 c#检测非法字符 c#双屏截图 c#中怎么关闭线程 c# 显示服务器上的图片 api嵌入窗口 c# c# 控制网页 c# encrypt c#微信网页版登录 c# login 居中 c# 考试软件