作业:

第一题:求1~n中间所有的质数 image

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n,s=0;
    cin>>n;
    for(int i=2;i<=n;i++){
        int flag=1;
        for(int j=2;j<=i-1;j++){
            if(i%j==0){
                flag=0;
                break;
            }
        }
        if(flag==1){
            printf("%d\n",i);
            s++;
        }
    }
    printf("%d",s);
    return 0;
}

第二题:第n小的质数 image

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n,s=0;
    cin>>n;
    for(int i=2;;i++){
        int flag=1;
        for(int j=2;j<=i-1;j++){
            if(i%j==0){
                flag=0;
                break;
            }
        }
        if(flag==1){
            s++;
        }
        if(s==n){
            printf("%d\n",i);
            break;
        }
    }
    return 0;
}

第三题:求第n个小幸运数 image

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n,s=0;
    cin>>n;
    for(int i=2;;i++){
        int flag=1;
        int tmp=i;
        while(tmp!=0){
            int d = tmp%10;
            if(!(d%2==0 or d%3==0)){
                flag = 0;
                break;
            }
            tmp=tmp/10;
        }
        if(flag==1){
            s++;
        }
        if(s==n){
            printf("%d\n",i);
            break;
        }
    }
    return 0;
}

1 条评论

  • @ 2024-1-6 14:25:23

    #include<iostream> using namespace std;

    int main(){ ** int a,s,d;** ** cin>>a;** ** for(int i=2;i<=a;i++){** ** for(int j=1;j<=i;j++){** ** if(i%j0){** ** s++;** ** **} ** } ** d++; ** if(s2){** ** if(d==2){** ** cout<<i-2<<" "<<i<<endl;** ** } ** d=0; ** } ** s=0; ** } ** return 0; }

    • 1