Cod sursa(job #653386)

Utilizator VisuianMihaiMihai Visuian VisuianMihai Data 27 decembrie 2011 20:54:58
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include<fstream>
using namespace std;
ifstream fin("ciur.in");
ofstream fout("ciur.out");
int i,j,nr,n;
bool *prim;
int main()
{
	fin >> n;
	prim = new bool[n+1];
	for ( i = 1; i <= n; i++ )
		prim[i]=false;
	nr=0;
	for (i=2; i<=n; i++)
	{
		if (prim[i]==false) //daca e prim
		{
			j=2;
			while(i*j<=n) //marcam multiplii numarului de la patratul sau incolo
			{
				prim[i*j]=true;
				j++;
			}
			nr++;
		}
	}
	fout << nr;
	return 0;
}