Advertisement
Guest User

Untitled

a guest
May 22nd, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.93 KB | None | 0 0
  1. #include<iostream>
  2. #include<string>
  3. using namespace std;
  4.  
  5. struct element
  6. {
  7.     string n;      // element wpisywany przez użytkownika
  8.     element *next; // wskaznik na nastepny element
  9.     element *prev; // wskaznik na poprzedni element
  10. };
  11.  
  12. int main()
  13. {
  14.     element *wierzcholek_kolejki = NULL;
  15.     element *koniec_kolejki = NULL;
  16.     element *pomoc = NULL;
  17.  
  18.     cout << "Podaj jedna z instrukcji:\n"
  19.     << "d liczba - aby dodac liczbe do stosu\n"
  20.     << "u - aby usunac liczbe ze stosu\n"
  21.     << "w - aby wyswietlic zawartosc stosu\n"
  22.     << "q - zakoncz\n";
  23.  
  24.     char instrukcja;
  25.     bool loop = true;
  26.     while (loop)
  27.     {
  28.         cin >> instrukcja;
  29.         switch (instrukcja)
  30.         {
  31.             case 'd':
  32.             pomoc = new element;
  33.             cin >> pomoc->n;
  34.  
  35.             if (wierzcholek_kolejki == NULL)
  36.             {
  37.                 pomoc->next = pomoc->prev = NULL;
  38.                 koniec_kolejki = wierzcholek_kolejki = pomoc;
  39.             }
  40.             else
  41.             {
  42.                 pomoc->next = NULL;
  43.                 koniec_kolejki->next = pomoc;
  44.                 pomoc->prev = koniec_kolejki;
  45.                 koniec_kolejki = pomoc;
  46.             }
  47.             break;
  48.         case 'u':
  49.             if (wierzcholek_kolejki != NULL)
  50.             {
  51.                 pomoc = wierzcholek_kolejki;
  52.                 if (wierzcholek_kolejki == koniec_kolejki)
  53.                 {
  54.                     wierzcholek_kolejki = koniec_kolejki = NULL;
  55.                 }
  56.                 else
  57.                 wierzcholek_kolejki = wierzcholek_kolejki->next;
  58.                 delete pomoc;
  59.             }
  60.             else
  61.             cout << "Kolejka jest pusta\n";
  62.             break;
  63.         case 'w':
  64.             if (wierzcholek_kolejki != NULL)
  65.             {
  66.                 cout << "Zawartosc kolejki:\n";
  67.                 pomoc = wierzcholek_kolejki;
  68.                 while (pomoc != NULL)
  69.                 {
  70.                     cout << pomoc->n << " ";
  71.                     pomoc = pomoc->next;
  72.                 }
  73.             }
  74.             else
  75.             cout << "Kolejka jest pusta";
  76.             cout << endl;
  77.             break;
  78.         case 'q':
  79.             cout << "Koniec programu";
  80.             cout << endl;
  81.             system("pause");
  82.             return 0;
  83.         default:
  84.             cout << "Musisz wybrac jedna z instrukcji:\nd - aby dodac element do stosu, "
  85.             << "u - aby usunac element ze stosu lub w - aby wyswietlic zawartosc stosu\n";
  86.             break;
  87.         }
  88.     }
  89.     return 0;
  90. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement