Cod sursa(job #2160521)

Utilizator vladb21Borcan Vlad vladb21 Data 11 martie 2018 13:11:30
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <stdio.h>

int n,v[1500],nr,nrp,p[300];

int main()
{
    int i,j;
    FILE *f,*g;
    f=fopen("ciur.in","r");
    g=fopen("ciur.out","w");
    fscanf(f,"%d",&n);
    nrp=0;
    for(i=2;i<=1500;i++)
    {
        if(v[i]==0){
            nrp++;
            p[nrp]=i;
            for(j=i+i;j<=1500;j+=i)
                v[j]=1;
        }
    }
    nr=0;
    for(i=2;i<=n;i++)
    {
        for(j=1;p[j]*p[j]<=i;j++)
            if(i%p[j]==0)
                break;
        if(p[j]*p[j]>i)
            nr++;
    }
    fprintf(g,"%d",nr);
    fclose(f);
    fclose(g);
}