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

Afisați toate numerele prime din intervalul [A,B].

Răspunsuri la întrebare

Răspuns de Adisor98
8
int prim(int k,int d)
 {    if(k<2)return 0;
      if(d*d>k)return 1;
       if(k%d==0)return 0;
     if(d==2)return prim(k,3);
  else return prim(k,d+2);
}//subprogram care determina daca un nr e prim recursiv eficient

int main()
{ int a,b,i;

for(i=a;i<=b;i++)
     if(prim(2,i)==1)cout<<i<<" ";


return 0;
}

Răspuns de express
29
#include <iostream>
using namespace std;
int a, b, d, i;
bool prim;
int main()
{
    cin >> a >> b;
    for(i = a; i <= b; i ++)
    {
        prim = true;
        for(d = 2; d * d <= i; d ++)
        if(i % d == 0)
        {
            prim = false;
            break;
        }
        if(prim) cout << i << " ";
    }
    return 0;
}

Alte întrebări interesante