#include #include #include #include #include #include #include #include #include #include #include using namespace std; template vector Paginate(Container& test_cont, int page_size) { vector result; size_t cont_size = test_cont.size(); size_t pages_count = cont_size / page_size; size_t last_page_size = cont_size - pages_count * page_size; if (last_page_size > 0) ++pages_count; for (int i=0; i void PrintRange(It range_begin, It range_end) { for (auto it = range_begin; it != range_end; ++it) { cout << *it << " "s; } cout << endl; } int main() { size_t size = 77; vector test_vector(size); iota(test_vector.begin(), test_vector.end(), -100); random_shuffle(test_vector.begin(), test_vector.end()); PrintRange(test_vector.begin(), test_vector.end()); vector rez = (Paginate(test_vector, 5)); PrintRange( rez.begin(), rez.end()); return 0; }