#include <iostream>
#include <cmath>
#include <vector>
#include <numeric>
using namespace std;

int main()
{
	int n;
	int max;
	while(cin>>n)
	{
		max = sqrt(1.0*n);
		vector<bool> prime(n+1, true);
		prime[0]=false;
		prime[1]=false;
		for(int i=2; i<=max; ++i)
		{
			if(prime[i])
			{
				for(int j=i*2; j<=prime.size()-1; j+=i)
				{
					prime[j]=false;
				}
			}
		}
		cout << accumulate(prime.begin(), prime.end(), 0) << '\n';
	}
}