#include <bits/stdc++.h>
using namespace std;
const long long INF = 1e12;

template<typename T>
bool is_prime(T _Num){
    if(_Num < 2)return false;
    if(_Num % 2 == 0){
        if(_Num == 2)return true;
        else return false;
    }
    bool prime = true;
    for(int i = 3; i <= sqrt(_Num); i += 2){
        if(_Num % i == 0){
            prime = false;
            break;
        }
    }
    return prime;
}

int main(){
    long long cnt = 0;
    vector<long long> prime(1010000, 0);
    for(int i = 1; i < 1010000; i++){
        if(is_prime(i))cnt++;
        prime[i] = cnt;
    }
    
    while(true){
        int n = 0;
        cin >> n;
        if(n == 0)break;
        cout << prime[n] << endl;
    }
    return 0;
}
