#include <iostream>
#include <vector>

const int max = 100;

int main() 
{
   std::vector<int> allnums;
   std::vector<int> primes;

   for (int i = 1; i <= max; ++i)
      allnums.push_back(i);   

   allnums[0]=0;

   for (int i = 2; i < allnums.size(); ++i) {   
      if (allnums[i-1] != 0) {
         primes.push_back(allnums[i-1]);
         for (int j = 2 * allnums[i-1]; j < max; j += allnums[i-1]) 
            allnums[j-1] = 0;  
      }
   }

   std::cout << "The prime numbers up to " << max << " are : " << std::endl;
   for (int i = 1; i < primes.size(); ++i) {
      std::cout << primes[i] << "\t";   
      if(i%5 == 0) std::cout << std::endl;
   }

   std::cout << std::endl;
   return 0;
}
