#include <iostream>
#include <cmath>
#include <algorithm>
#include <map>
#include <string>
#include <vector>
#define FOR(i, a, b)  for(int i=a; i<b; ++i)
#define rFOR(i, a, b) for(int i=a-1; i>=b; --i)
#define REP(i, n) for(int i=0; i<n; ++i)
#define rREP(i, n) for(int i=n-1; i>=0; --i)
#define all(a)  a.begin(), a.end()
#define MAXNUM 1000000
using namespace std;

int num[MAXNUM]={0};

int main(){
  int n;
  FOR(i, 2, (MAXNUM)/2){
    num[2*i]=1;
  }
  while(cin >> n){
    int ans=0;
    for(int i = 3; i<=n; i+=2){
      bool isPrimeN = true;
      if(num[i]!=0) continue;
      for(int j=3; j<=floor(sqrt(i)); j++){
        if(i%j==0){
          isPrimeN = false;
          break;
        }
      }
      if(isPrimeN){
        for(int j=2; j<=n; j++){
          if(j*i > n) break;
          num[j*i]=1;
        }
      }
    }
    FOR(i, 2, n+1){
      if(num[i]==0){
        ans++;
      }
    }
    cout << ans << endl;;
  }
  return 0;
}

