Informatică, întrebare adresată de mickey213, 9 ani în urmă

Cerinţa

Se se citește un număr natural n. Să se determine cel mai mic număr prim, strict mai mare decât n.
Date de intrare

Programul citește de la tastatură numărul n.
Date de ieşire

Programul afișează pe ecran numărul cerut .
Restricţii şi precizări

1 ≤ n ≤ 1.000.000.000


Exemplu

Date de intrare

20

Date de ieșire

23

Răspunsuri la întrebare

Răspuns de AdiHero
1
#include <iostream>
#include <math.h>
using namespace std;

int main()
{
    long long int n;
    cin>>n;
    int ok=1;
    for(long long int i=n;i<=1000000000 && ok==1;i++)
    {
        int ok2=1;
        for(long long int d=2;d<=sqrt(i)&& ok2==1;d++)
            if(i%d==0) ok2=0;
        if(ok2==1)
        {
            cout<<i;
            ok=0;
        }
    }
    return 0;
}



mickey213: am reusit sa o fac, dar mersi oricum si sa stii ca solutia ta nu e una foarte optima, adica timpul de executie este destul de lung
AdiHero: Imi imaginez ca pentru numerele foarte mari este un timp de executie destul de mare. In caz ca nu ai reusit sa o optimizezi, pot sa ma gandesc si la asta.
mickey213: am optimizat-o
Alte întrebări interesante