#include<cstdio>

bool isprime[1000000];

void eratos(){
	for(int i=0;i<1000000;i++){
		isprime[i] = true;
	}
	isprime[0] = isprime[1] = false;
	for(int i=2;i<=1000;i++){
		if(isprime[i] == true){
			int j = i + i;
			while(j < 1000000){
				isprime[j] = false;
				j = j + i;
			}
		}
	}
}

int main(void){
	int n;
	eratos();
	while(scanf("%d",&n) != EOF){
		int cnt = 0;
		for(int i=0;i<=n;i++){
			if(isprime[i] == true){
				cnt++;
			}
		}
		printf("%d\n",cnt);
	}
	return 0;
}