Cod sursa(job #308508)

Utilizator doru.nituNitu Doru Constantin doru.nitu Data 27 aprilie 2009 15:45:45
Problema Ciurul lui Eratosthenes Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include<stdio.h>
FILE *f=fopen("ciur.in","r");
FILE *g=fopen("ciur.out","w");
int n,a[10001],nr,i,k;
int main()
{ fscanf(f,"%d",&n);
 if(n==2)    { fprintf(g,"1\n");
					 fclose(f);
					 fclose(g);
					 return 0;
				   }
  nr=1;
  for(i=3;i<=n;i+=2)  a[i]=i;
  for(i=3;i<=n;i+=2) { if(a[i]){ nr++;
								 k=2;
								 while(i*k<=n) { a[i*k]=0;
												 k++;
											   }
							   }
					 }
 fprintf(g,"%d\n",nr);
 fclose(f);
 fclose(g);
 return 0;
}