Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //------------PAWEŁ GĄSIEWSKI---------
- //------------Laboratorium 11---------
- #include <iostream>
- #include <cstdlib>
- #include <ctime>
- #include <vector>
- #include <queue>
- #include <stack>
- #include <list>
- using namespace std;
- class produkt {
- private:
- int cena;
- public:
- produkt();
- int return_cena();
- };
- produkt::produkt() {
- cena = (rand() % 100) + 1;
- cout << "p o cenie : " << cena << endl;
- }
- int produkt::return_cena() {
- return cena;
- }
- class pojemnik {
- public:
- vector <produkt> wektor;
- queue <produkt> kolejka;
- stack <produkt> stos;
- list <produkt> lista;
- void v_add(produkt *p);
- void show();
- };
- void pojemnik::v_add(produkt *p) { //Metoda dodajaca obiekty na koniec wektora
- wektor.push_back(*p);
- cout << "Dodaje do wektora w pojemniku obiekt o cenie : " << p->return_cena() << endl;
- }
- void pojemnik::show() { //Metoda wyswietlajaca ceny produktow zaczynajac od poczatku wektora
- for (auto i = wektor.begin(); i != wektor.end(); ++i)
- {
- cout << "Wyswietlam element wektora w pojemniku o cenie : " << i->return_cena() << endl;
- }
- }
- int main() {
- vector <produkt> myvector;
- queue <produkt> myqueue;
- stack <produkt> mystack;
- list <produkt> mylist;
- for (int i = 0; i < 10; i++)
- {
- produkt *np = new produkt();
- myvector.push_back(*np);
- }
- for (auto i = myvector.begin(); i < myvector.end(); ++i)
- {
- cout << "Wyswietlam produkt o cenie : " << i->return_cena() << endl;
- }
- if (!myvector.empty())
- cout << "Wektor nie jest pusty i ma w sobie : " << myvector.size() << " elementow." << endl;
- else
- cout << "Wektor jest pusty." << endl;
- myvector.erase(myvector.begin() + 4); //5 element od poczatku vectora, bo nie znamy iteracji
- cout << "Wyswietlam wektor po usunieciu elementu 5 od poczatku: " << endl;
- for (auto i = myvector.begin(); i < myvector.end(); ++i)
- {
- cout << "Wyswietlam produkt o cenie : " << i->return_cena() << endl;
- }
- for (int i = 0; i < 10; i++)
- {
- produkt *np = new produkt();
- myqueue.push(*np);
- }
- while (!myqueue.empty())
- {
- cout << "Wyswietlam element kolejki o cenie : " << myqueue.front().return_cena() << endl;
- myqueue.pop();
- }
- if (myqueue.empty())
- cout << "Kolejka jest teraz pusta" << endl;
- for (int i = 0; i < 10; i++)
- {
- produkt *np = new produkt();
- mystack.push(*np);
- }
- cout << endl;
- while (!mystack.empty())
- {
- cout << "Wyswietlam element stosu o cenie : " << mystack.top().return_cena() << endl;
- mystack.pop();
- }
- cout << endl;
- if (mystack.empty())
- cout << "Stos jest teraz pusty." << endl;
- cout << endl;
- pojemnik *p = new pojemnik();
- for (int i = 0; i < 20; i++)
- {
- produkt *np = new produkt();
- p->wektor.push_back(*np);
- }
- for (auto i = p->wektor.begin(); i != p->wektor.end(); ++i)
- {
- cout << "Wyswietlam produkt w pojemniku p o cenie : " << i->return_cena() << endl;
- }
- cout << endl;
- cout << "Czyszcze wektor : " << endl;
- myvector.clear();
- if (myvector.empty())
- cout << "Moj wektor jest teraz pusty." << endl;
- cout << endl;
- pojemnik *cube = new pojemnik();
- cout << "Tworze nowy pojemnik o nazwie cube " << endl;
- for (int i = 0; i < 10; i++)
- {
- produkt *np = new produkt();
- cube->v_add(np);
- }
- cout << endl;
- cout << "Teraz wyswietle wektor znajdujacy sie w pojemniku cube : " << endl;
- cube->show();
- cout << endl;
- system("pause");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement