Cod sursa(job #1530868)

Utilizator adrian.costache.99Adrian Costache adrian.costache.99 Data 21 noiembrie 2015 12:58:28
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.7 kb
using namespace std;
#include <iostream>
#include <fstream>
#include <math.h>
int main ()
{
	//fara ciurul lui eratosthenes
	//dandu-se un nr n, sa se det numarul numerelor prime <=n
	unsigned long n, s=0, i, d, f, a[200000];
	ifstream fin;
	fin.open("ciur.in");
	ofstream fout;
	fout.open("ciur.out");
	
	/*fin>>n;
	for (i=2; i<=n; ++i)
	{
		f=1;
		for (d=2; d<=sqrt(i*1.0); ++d)
		{
			if (i%d==0)
			{
				f=0;
				break;
			}
		}
		if (f==1)
		{
			++s;
		}
	}
	fout<<s;*/
	
	fin>>n;
	for (i=0; i<=n; i++)
	{
		a[i]=i;
	}
	for (i=2; i<=n; ++i)
	{
		if (a[i]!=0)
		{
			++s;		
			for (int j=i*2; j<=n; j=j+i)
			{
				a[j]=0;
			}
		}
	}
	fout<<s;
	return 0;
}