Cod sursa(job #597793)

Utilizator MarianGMarian MarianG Data 23 iunie 2011 12:11:34
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include <stdio.h>
#include <math.h>

int long unsigned i,ra,vprim [100000] = {2};
int long unsigned  prim(int long unsigned  a)
{

	ra =(int long unsigned) sqrt(a);
		for(i=0;vprim[i]!= 0;i++)
				if(a%vprim[i] == 0) return 0;
	vprim[i]=a;
	return 1;
}

int main(void)
{
	int long unsigned  i=1,N,K=1;
	freopen("ciur.in","r",stdin);
		scanf("%ld",&N);
	fclose(stdin);
	for(i=3;i<=N;i+=2)
	{
		if (prim(i)) K++;	
	}
	freopen("ciur.out","w",stdout);	
		printf("%ld",(int long unsigned) K);
	fclose(stdout);
	return 0;
}