#include <iostream>
#include <cstdlib>
#include <ctime>
#include <queue>
template <typename T>
void remove(std::queue<T> *q)
{
int *a = new int[q->size()];
int t = 0;
for (int i = 0; i < q->size(); i++)
if (q->front() <= 0)
a[t] = q->front();
t++;
}
q->pop();
for (int i = 0; i < t; i++)
q->push(a[i]);
int main()
srand(time(NULL));
std::queue<int> q;
int l;
std::cin >> l;
for (int i = 0; i < l; i++)
//создание очереди
q.push(rand()%21-10);
std::cout << q.back() << ' ';
remove(&q);
std::cout << std::endl;
for (int i = 0; i < q.size(); i++)
//вывод очереди на экран
std::cout << q.front() << ' ';
q.pop();
return 0;
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <queue>
template <typename T>
void remove(std::queue<T> *q)
{
int *a = new int[q->size()];
int t = 0;
for (int i = 0; i < q->size(); i++)
{
if (q->front() <= 0)
{
a[t] = q->front();
t++;
}
q->pop();
}
for (int i = 0; i < t; i++)
q->push(a[i]);
}
int main()
{
srand(time(NULL));
std::queue<int> q;
int l;
std::cin >> l;
for (int i = 0; i < l; i++)
{
//создание очереди
q.push(rand()%21-10);
std::cout << q.back() << ' ';
}
remove(&q);
std::cout << std::endl;
for (int i = 0; i < q.size(); i++)
{
//вывод очереди на экран
std::cout << q.front() << ' ';
q.pop();
}
return 0;
}