#include<iostream>
#include<stdio.h>
using namespace std;
int phi[1000000];
bool vis[1000000];
int p[1000000];
int sieve(int n) {
		int i, j,cnt=0;
		phi[1] = 1;
		for (i = 2; i < n; ++i) {
			if (!vis[i]) {
				p[cnt++] = i;
				phi[i] = i - 1;
			}
			for (j = 0; j < cnt && i * p[j] < n; ++j) {
				vis[i * p[j]] = true;
				if (i % p[j]) phi[i * p[j]] = phi[i] * phi[p[j]];
				else {
					phi[i * p[j]] = phi[i] * p[j];
					break;
				}
			}
		}
		return cnt;
	}
	
	


int main()
{
	int n;
	while (scanf("%d",&n)) {
		printf("%d\n", sieve(n));
	}
			
	

    return 0;
}