Cod sursa(job #2100993)
Utilizator | Data | 6 ianuarie 2018 18:04:55 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 50 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.51 kb |
#include <fstream>
using namespace std;
ifstream in("ciur.in");
ofstream out("ciur.out");
/*
Ciurul lui Eratostene */
int main()
{
int nr,n,i,j;
nr=0;
in>>n;
bool a[n];
for(i=2; i<=n; i++)
a[i]=1;
for(i=2; i*i<=n; i++)
{
if(a[i]!=0)
for(j=2; j<=n/i; j++)
a[i*j]=0; //Bifam multiplii unui numar cu 0.
}
for(i=2;i<=n; i++)
{
if(a[i]!=0)
nr++;
}
out<<nr;
return 0;
}