Cod sursa(job #2070083)
Utilizator | Pop Mihali Marco Silviu marcogold | Data | 19 noiembrie 2017 11:08:55 |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.47 kb |
#include <iostream>
#include <fstream>
#include <math.h>
using namespace std;
ifstream fi("ciur.in");
ofstream fo("ciur.out");
int main()
{ int N;
fi>>N;
int I, J,S=0,A=sqrt(N);
bool C[N+1];
fi>>N;
for(I=1; I<=N; I++) C[I] =true;
for (I=2; I<=A; I++)
if(C[I] == true)
for(J=2; J*I <= N; J ++) C[I*J] = 0;
for(I=2; I<=N; I++)
if(C[I] ==true) S++;
fo<<S;
return 0;
}