Cod sursa(job #998287)

Utilizator PraetorGrigorosoaia Florin Praetor Data 16 septembrie 2013 18:00:31
Problema Ciurul lui Eratosthenes Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.47 kb
#include<fstream>
using namespace std;
FILE*in;
ofstream out("ciur.out");
int N, i, numar, OK, p, JACK, v[2000000];
int main()
{
    in=fopen("ciur.in","r");
    fscanf(in,"%d",&N);
    for (i=1; i<N; i++)
        v[i]=1;
	p=2;
	JACK=1;
	while (JACK)
	{
		OK=p;
	    for (i=p+p-1; i<N; i+=p)
			v[i]=0;
		for (i=p+1; i<N; i++)
			if (v[p])
				p=i;
		if (OK==p)
		    JACK=0;
	}
	for (i=1; i<=N; i++)
		if (v[i])
			numar++;
	out<<numar;
    return 0;
}