#include <bits/stdc++.h>
using namespace std;

const int MAX_N = 1000000;

int main(){
    vector<bool> is_prime(MAX_N, true);
    vector<int> primes;
    for(int i=2;i<MAX_N;i++){
        if(is_prime[i]){
            primes.push_back(i);
            for(int j=i*i;j<MAX_N;j+=i){
                is_prime[j] = false;
            }
        }
    }

    int n;
    while(cin >> n){
        int ans = upper_bound(primes.begin(), primes.end(), n) - primes.begin();
        cout << ans << endl;
    }

    return 0;
}