筛法求素数(C语言/C++)

编程入门 行业动态 更新时间:2024-10-24 08:28:24

筛法求<a href=https://www.elefans.com/category/jswz/34/1764940.html style=素数(C语言/C++)"/>

筛法求素数(C语言/C++)

什么是素数

定义

在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数。

C语言实现判断素数

int prime(int x)
{for(int i=2;i*i<=x;i++){if(x%i==0)return 0;}return 1;
}

这个代码应该是很好理解的
但是如果让我们求n以内的素数的话,这种方法就会很慢
所以请大家看下面一节的内容

筛法求素数

#include <stdio.h>
#include <iostream>
#include <cmath>
#include <string.h>
using namespace std;
bool f[1000005];
int main()
{int n;scanf("%d",&n);f[1]=false;for(int i=2;i<=n;i++)f[i]=true;for(int i=2;i<=n;i++){if(f[i]==true){for(int j=2;j*i<=n;j++)f[i*j]=false;}}for(int i=2;i<=n;i++)if(f[i])printf("%d ",i);
}

更多推荐

筛法求素数(C语言/C++)

本文发布于:2023-06-13 05:24:04,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/674889.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:素数   语言   筛法求

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!