#include <iostream>

#include <cmath>
#include <stdio.h>

using namespace std;

#define MAX_N	64000

bool sito[MAX_N];
unsigned long i, j, n, sn;

int main()
{
    cout << "Podaj n(<=" << MAX_N << "): ";
    cin >> n;
    // Inicjalizacja tablicy
    for(i=0; i<MAX_N; i++)
		sito[i]=true;
	// Przesiewanie
	sn = round(sqrt(n));
    for(i=2; i<=sn; i++)
		if(sito[i-1])				// Znalezienie kolejnej liczby pierwszej
		{
			j=i+i;					// Wyznaczenie pierwszej wielokrotności tej liczby pierwszej
			while(j<=n)				// Dla każdej pozostałej liczby
			{
				sito[j-1]=false;	// Zaznaczenie, że wielokrotność nie jest liczbą pierwszą
				j+=i;				// Przejście do kolejnej wielokrotności
			}
		}
	// Wypisanie wyników
	for(i=2; i<=n; i++)
		if(sito[i-1])
			printf("%8lu", i);
	cout << endl;
    return 0;
}

