Informatică, întrebare adresată de vladzavra, 8 ani în urmă

se dau n intervale de forma [a[i],b[i]] cu i=1,2,...,n. pentru fiecare interval afisati nr de nr prime.

Răspunsuri la întrebare

Răspuns de uionutalin
0

Răspuns:

#include<iostream>

using namespace std;

int prim(int x)

{

   if(x<2)

       return 0;

   if(x>2 && x%2==0)

       return 0;

   for(int d=3; d*d<=x; d=d+2)

       if(x%d==0)

           return 0;

   return 1;

}

int main()

{

   int n,i,a[101],b[101],j,nr;

   cin>>n;

   for(i=1; i<=n; i++)

   {

       cin>>a[i]>>b[i];

       nr=0;

       if(a[i]<b[i])

       {

           for(j=a[i]; j<=b[i]; j++)

               if(prim(j)==1)

                   nr++;

       }

       else

       {

           if(a[i]>b[i])

           {

               for(j=b[i]; j<=a[i]; j++)

                   if(prim(j)==1)

                       nr++;

           }

       }

       cout<<nr<<" ";

   }

   return 0;

}

Explicație:

Alte întrebări interesante