#include<iostream>

using namespace std;

const int MAX_N = 1000000;
bool isprime[MAX_N];

void init() {
    fill(isprime,isprime+MAX_N,true);
    isprime[0] = isprime[1] = false;
    for (int i = 2; i < MAX_N; i++) {
        if (isprime[i]) {
            for (int k = 2; i * k < MAX_N; k++) {
                isprime[i * k] = false;
            }
        }
    }
}

int nprimes(int n) {
    int res = 0;
    for (int i = 0; i <= n; i++) {
        res += isprime[i];
    }
    return res;
}

int main() {
    init();
    int n;
    while (cin >> n) {
        cout << nprimes(n) << "\n";
    }
}
