Po pierwsze nie wiem czego nie rozumiesz w tym zadaniu. Twoim zadaniem jest zaimplementować stos czyli strukturę danych inaczej zwaną kolejką LIFO. Struktura ta jak nazwa wskazuje podobna jest do stosu książek. Elementy w tym przypadku książki możemy układać jedna na drugiej. W ten sposób rośnie nam kupka książek. Układamy jedna na drugiej, zaś zdjąć możemy tylko ten element który jest na samej górze. To tak samo jak w realnym życiu układasz jedną książkę na drugiej. Jeśli chcesz dostać się do trzeciej książki od góry musisz najpierw ściągnąć dwie które leżą na nie. Ty masz to zrobić za pomocą struktury. Ja jednak na potrzeby demonstracyjne, nie chcę za ciebie rozwiązywać zadania, pokarzę ci sens tego zadania z wykorzystaniem stosu z STL.
#include <iostream>
#include <stack>
using namespace std;
int main() {
stack<int> moj_stos; //tworze obiekt stosu
//wkładam elementy 1,2,3,4,5
moj_stos.push(1);
moj_stos.push(2);
moj_stos.push(3);
moj_stos.push(4);
moj_stos.push(5);
//wypisanie oraz zdjecie 4 elementow ze stosu
cout<<moj_stos.top()<<endl;
moj_stos.pop();
cout<<moj_stos.top()<<endl;
moj_stos.pop();
cout<<moj_stos.top()<<endl;
moj_stos.pop();
cout<<moj_stos.top()<<endl;
moj_stos.pop();
cout<<endl<<endl;
//wstawiamy liczby 6,7,8,9,10
moj_stos.push(6);
moj_stos.push(7);
moj_stos.push(8);
moj_stos.push(9);
moj_stos.push(10);
//wypisujemy zawartosc stosu
while(moj_stos.empty()!=true)
{
cout<<moj_stos.top()<<endl;
moj_stos.pop();
}
return 0;
}
Pragnę jeszcze zwrócić uwagę na fakt że jeśli wkładasz do stosu liczby 1,2,3,4,5 to jeśli je będziesz zdejmować to będą się wypisywać od końca. Ponieważ 5 jest na samym szczycie, 4 tuż pod 5 i tak dalej.
Zerknij jeszcze na to:
https://cpp0x.pl/kursy/Kurs-STL-C++/Adapter-stosu-std-stack/116