Cod sursa(job #1324558)

Utilizator Andreea21Andreea Dima Andreea21 Data 22 ianuarie 2015 15:48:23
Problema Ciurul lui Eratosthenes Scor 30
Compilator c Status done
Runda Arhiva educationala Marime 0.44 kb
#include <stdio.h>
#include <stdlib.h>
#define M 2000000
int c[M];
int main()
{
    int n,i,j,nr=0;
    FILE *in,*out;
    in=fopen("ciur.in","r");
    out=fopen("ciur.out","w");
    fscanf(in,"%d",&n);
    for(i=2;i*i<=n;i++)
        if(!c[i])
        for(j=i*i;j<=n;j+=i)
        c[j]=1;
    for(i=2;i<=n;i++)
    {
        if(c[i]==0) nr++;
    }
    fprintf(out,"%d\n",nr);
    fclose(in);
    fclose(out);
    return 0;
}