program cntprim (input , output);
var N , p , i , s : integer;
a : array [1..500000] of integer;
begin
readln(N);
s := 0;
for i := 1 to N do
a[i] := i;
p := 2;
while p * p <= N do
begin
for i := 1 to N do
if i mod p = 0 then
a[i] := 0;
i := 1;
while a[i] = 0 do
begin
p := p + 1;
i := i + 1;
end
end;
for i := 1 to N do
if a[i] <> 0 then
s := s + 1;
writeln(s);
end.
cHJvZ3JhbSBjbnRwcmltIChpbnB1dCAsIG91dHB1dCk7CiAgICB2YXIgTiAsIHAgLCBpICwgcyA6IGludGVnZXI7CiAgICAgICAgYSA6IGFycmF5IFsxLi41MDAwMDBdIG9mIGludGVnZXI7CgogIGJlZ2luCiAgIHJlYWRsbihOKTsKICAgcyA6PSAwOwogICBmb3IgaSA6PSAxIHRvIE4gZG8KICAgIGFbaV0gOj0gaTsKICAgcCA6PSAyOwogICB3aGlsZSBwICogcCA8PSBOIGRvCiAgICBiZWdpbgogICAgIGZvciBpIDo9IDEgdG8gTiBkbwogICAgICBpZiBpIG1vZCBwID0gMCB0aGVuCiAgICAgICBhW2ldIDo9IDA7CiAgICAgaSA6PSAxOwogICAgIHdoaWxlIGFbaV0gPSAwIGRvCiAgICAgIGJlZ2luCiAgICAgICBwIDo9IHAgKyAxOwogICAgICAgaSA6PSBpICsgMTsKICAgICAgZW5kCiAgICBlbmQ7CiAgIGZvciBpIDo9IDEgdG8gTiBkbwogICAgaWYgYVtpXSA8PiAwIHRoZW4KICAgICBzIDo9IHMgKyAxOwogICB3cml0ZWxuKHMpOwogIGVuZC4K