Cod sursa(job #537029)

Utilizator sanda-mariaPatras Sanda sanda-maria Data 19 februarie 2011 21:42:58
Problema Ciurul lui Eratosthenes Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include<iostream.h>
#include<math.h>
#include<fstream.h>
int pr[255],i,a[100],k;
int prim(int j)
{
     for(j=2;j<=sqrt(i);j++)
     if(i%j==0 && a[j]!=1) return 0;
     else 
     for(k=j+j;k<=sqrt(i);k+=j)
     a[j]=1;
     return 1;
}
int main()
{
    int j,n,c=0;
    ifstream f("ciur.in");
    ofstream g("ciur.out");
    f>>n;
    f.close();
    for(i=1;i<=n;i++)
    pr[i]=1;
    for(i=2;i<=n;i++)
    if(prim(i))
    c++;
    else
    {pr[i]=0;
    for(j=i+i;j<=n;j=j+i)
    pr[j]=0;
    }
    g<<c;
    g.close();
    return 0;
}