Създаване на програма за динамична опашка на C++

0 гласа
861 прегледа
попитан 2018 март 21 от pepi9846 (140 точки)

Здравейте колеги . Не ми стана много ясно в лекцията за тези опашки , стекове , декове и т.н на C++ .На всичкото отгоре имам и задача за домашно . Ако има някой доброволец да ми каже как става ще му бъда много благодарен ..Прочетох правилата ,че не бива да искам на готово , обаче нямам избор като не знам как става. Задачата е следната : Да се състави програма за създаване на динамична опашка и изключване от нея на N-тия елемент от края.Да се изведе на екрана получената опашка. Благодаря предварително . 

1 отговор

+1 глас
отговорени 2018 април 20 от Павката (3,410 точки)

Ако е позволено да ползваш STL - следната декларация решава проблема:
std::queue<myclass*> my_queue;
 

Ако трябва да илюстрираш с пример как работи - ти предлагам следната възможност:

#include <iostream> // std::cin, std::cout
#include <queue> // std::queue
using namespace std;
int main ()
{
  queue<int> myqueue;
  int myint;

  cout << "Please enter some integers (enter 0 to end):\n";
  do {
    cin >> myint;
    myqueue.push (myint);
  } while (myint);

  cout << "myqueue contains: ";
  while (!myqueue.empty())
  {
    cout << ' ' << myqueue.front();
    myqueue.pop();
  }
  cout << '\n';

  return 0;
}

Ако не е позволено ползването на STL - може да разучиш дизайна на класа queue и да направиш собствена имплементация по този дизайн.:
http://www.cplusplus.com/reference/queue/queue/

...