简单容易的求素数(质素)的方法

#include<iostream>
#include<vector>
using namespace std;
vector<int> v;
int prime(int a,int b){
	for(int i=a;i<=b;i++){
		if(i!=2&&i%2==0)continue;//排除掉2的倍数,加快效率
		for(int j=3;j*j<=i;j+=2){//找有没有因子,只要找到该数的根号(n)即可,由于懒得去写j<=sqrt(i),直接写j*j<i 
			if(i%j==0) goto RT;
		} 
		v.push_back(i);
		RT:continue;
	}
} 
int main(int argc,char *argv[]){
	prime(2,100); 
	for(int i=0;i<v.size();i++){
		cout<<v[i]<<endl;
	} 
	return 0;
} 
发布了70 篇原创文章 · 获赞 71 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_43625764/article/details/102783010
今日推荐