Cod sursa(job #159933)

Utilizator nicolaetitus12Nicolae Titus nicolaetitus12 Data 14 martie 2008 15:43:31
Problema Ciurul lui Eratosthenes Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.41 kb
#include <string.h>
#include <stdio.h>
#define N 2000000
int main ()
{FILE *f,*fout;
 f=fopen("ciur.in","r");
 fout=fopen("ciut.out","w");
 long n,i,j,S;
 char sir[N];
 fscanf(f,"%ld",&n);
 memset(sir,0,sizeof(sir));
 for (i=2;i<=n/2;i++)
 {for (j=i;j<=n;j*=i)
  sir[j]=1;
 }
 sir[1]=1;
 sir[2]=0;
 for (S=0,i=1;i<=n;i++)
 {if(!sir[i])S++;
 }
 fprintf(fout,"%ld",S);
 fclose(fout);
 return 0;
}