Pagini recente » Diferente pentru implica-te/arhiva-educationala intre reviziile 45 si 46 | Cod sursa (job #964045) | Cod sursa (job #2796945) | Cod sursa (job #1104297) | Cod sursa (job #2870546)
#include <fstream>
using namespace std;
ifstream fin ("ciur.in");
ofstream fout("ciur.out");
const int NMAX = 2e6;
int n, s;
int ciur[NMAX];
void Ciur_Eratosthenes() {
ciur[0] = ciur[1] = 1;
for (int i = 2; i <= NMAX; i++)
if (!ciur[i])
for (int j = i + i; j <= NMAX; j += i)
ciur[j] = 1;
}
int main() {
Ciur_Eratosthenes();
fin >> n;
for (int i = 0; i <= n; i++) {
s += (!ciur[i] ? 1 : 0);
}
fout << s;
return 0;
}