文章

28

粉丝

0

获赞

463

访问

9.5k

头像
判断素数 题解:素数定义+枚举
P1013 贵州大学机试题
发布于2026年2月11日 13:39
阅读数 184

#include <iostream>
using namespace std;

int main(){
	int n;
	cin>>n;
	bool isSS=true;
    //根据定义,1不是素数,偶数除了2都不是素数
    //即只有2,和大于2的奇数可能是素数
    if((n%2==0&&n>2)||n==1) isSS=false;
    else{
    //判断当前数是否是素数
	    for(int i=2;i*i<=n;i++){
        if(n%i==0) isSS=false;//能被因数整除就不是
	  }
    }
    //如果不是,看他后面的数
	if(!isSS){
		while(!isSS){
			n++;
			isSS=true;//假设后面是素数
			for(int i=2;i*i<=n;i++){
				if(n%i==0) isSS=false;//能被因数整除就不是
			}
		}	
	}
	cout<<n;
	return 0;
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发