#include<string>
#include<vector>
#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstdlib>
#include<sstream>
#include<functional>
#include<map>
#include<set>
#include<cmath>

#define REP(i,s,e) for(int i=int(s);i<int(e);i++)
#define rep(i,n) for(int i=0;i<int(n);i++)

using namespace std;

int a[1000000];

bool p(int n){
int m;
for(int i=2;i<=n;i++){
if(n%i==0){ m=i; break;
	}
}
if(m==n) return true;
else return false;
}

int main(){

int n;
while(1){

cin >> n;

if(cin.fail()) break;

int f=floor(sqrt(1.0*n));
int c=floor(sqrt(1.0*n)+1);

for(int j=c;j<=n;j++) a[j]=j;


int x=0;
for(int i=2;i<=f;i++){

	if(p(i)){
	x++;
	for(int j=c;j<=n;j++){
	if(a[j]%i==0 && a[j]!=0) a[j]=0;
	}
	}

}
int y=0;
for(int i=c;i<=n;i++){
	if(a[i]!=0) y++;
}

	cout << x+y << endl;

}

	return 0;
}