top1编程
← 返回题目
题解

素数

2 条题解

  • 0
    @ 2026-7-29 0:06:29
    #include<bits/stdc++.h>
    using namespace std;
    bool isprime(int s) {//判断质数的函数
    	if (s <= 1) {//1不是质数
    		return false;
    	}
    	//在2~s-1这个范围内找因数,只要因数存在就不是质数
    	for (int i = 2; i <= s - 1; i++) {
    		if (s % i == 0) {//只要能被整除,就不是质数
    			return false;
    		}
    	}
    	return true;//上面两个部分都没有返回,就说明这是一个质数
    }
    int main(){
    	int n;
    	cin >> n;
    	if (n < 5) {//小于5没有质数对
    		cout << "empty";
    	}
    	//扫描n以内的素数对
    	for (int i = 1; i <= n - 2; i++) {//循环范围不可以超过n - 2
    		if (isprime(i) && isprime(i + 2)) {
    			cout << i << ' ' << i + 2 << endl ;
    		}
    	}
    	return 0;
    }
    
    • 0
      @ 2026-7-28 22:44:57
      #include<iostream>
      #include<cmath>
      using namespace std;
      int main(){
      	int n,i,c=0;
      	cin>>n; 
      	for(i=2;i<=sqrt(n);i++){//除以除了1-本身的数,一个整数的因子对,一定在2~sqrt(n)之间 
      		if(n%i==0){//整除说明不是素数 
      			c++;
      			break;	
      		} 	
      	}
      	if(c==0&&n>1){
      		cout<<"T"<<endl;
      	}
      	else{
      		cout<<"F"<<endl;
      	}
      	return 0;
      }
      
      • 1