Pagini recente » Cod sursa (job #2166156) | Cod sursa (job #205662) | Cod sursa (job #795542) | Cod sursa (job #696114) | Cod sursa (job #2729403)
#include <fstream>
using namespace std;
int main()
{
int sieve[2000001];
long int n,totalprime;
ifstream f;
f.open("ciur.in");
f>>n;
totalprime = n-1;
for(int i=2; i<=n; i++)
sieve[i] = 0; //All numbers are prime to begin with
f.close();
for(int i=2; i<=n; i++)
if(!sieve[i]) //The number we found is prime, so we can begin the sieve algorithm
for(int j = 2*i; j <= n; j += i)
if(!sieve[j]) //Found a non-prime number that is marked as a prime
{
sieve[j] = 1;
totalprime = totalprime-1;
}
ofstream g;
g.open("ciur.out");
g<<totalprime;
g.close();
return 0;
}