/ Published in: C++
Expand |
Embed | Plain Text
#include <iostream> //#include "polje.h" #include "pokazivaci.h" #include <string.h> using namespace std; void DodajZapis(stog *S, car X) { PushS(S, X); } void IskrcajOsimAudi(stog *S) { stog Pomocni; InitS(&Pomocni); car Tekuci; while (!IsEmptyS(S)) { Tekuci = TopS(S); PopS(S); if (strcmp(Tekuci.model.c_str(),"AUDI") != 0 && Tekuci.godina_proizvodnje > 2006) { cout << "Iskrcavam: " << Tekuci.broj << " "; cout << Tekuci.proizvodjac << " "; cout << Tekuci.model << " "; cout << Tekuci.godina_proizvodnje << endl; } else { PushS(&Pomocni, Tekuci); } } cout << endl << "Neiskrcana vozila, od dna prema vrhu:" << endl; while (!IsEmptyS(&Pomocni)) { Tekuci = TopS(&Pomocni); PopS(&Pomocni); cout << Tekuci.broj << " " << Tekuci.proizvodjac << " "; cout << Tekuci.model << " " << Tekuci.godina_proizvodnje << endl; PushS(S, Tekuci); } } void IskrcajAudi(stog *S) { if (IsEmptyS(S)) { return; } else { car Tekuci; Tekuci = TopS(S); PopS(S); IskrcajAudi(S); // rekurzivan poziv if (strcmp(Tekuci.model.c_str(),"AUDI") == 0) { cout << "Iskrcavam: " << Tekuci.broj << " "; cout << Tekuci.proizvodjac << " "; cout << Tekuci.model << " "; cout << Tekuci.godina_proizvodnje << endl; } else { PushS(S, Tekuci); } } } int main() { stog StogAutomobila; stog StogKopija; InitS(&StogAutomobila); InitS(&StogKopija); int izbor; car Auto; do { cout<<"----------------------------------------------------"<<endl; cout<< "IZBORNIK"<<endl; cout << "1 unesite za dodavanje zapisa." << endl; cout << "2 nesite za iskrcaj novih auta koji nisu Audi." << endl; cout << "3 unesite za iskrcaj svih Audija." << endl; cout << "4 unesite za izlaz." << endl; cout << "------------------------------------------------"<<endl; cout<<"Vas izbor: "; cin >> izbor; cout<<endl<<endl; switch (izbor) { case 1: for (int i = 0; i < 15; i++) { cout << "Unesite sifru auta: "; cin >> Auto.broj; do { cout << "Unesite godinu proizvodnje: "; cin >> Auto.godina_proizvodnje; } while (Auto.godina_proizvodnje < 1995 ||Auto.godina_proizvodnje>2010); cout << "Unesite proizvodac: "; cin >> Auto.model; cout << "Unesite model: "; cin >> Auto.proizvodjac; cout<<endl<<endl; DodajZapis(&StogAutomobila, Auto); DodajZapis(&StogKopija, Auto); } break; case 2: // funkciju iz b) zadatka testiramo nad StogAutomobila IskrcajOsimAudi(&StogAutomobila); break; case 3: // ... dok funkciju iz c) zadatka nad StogKopija IskrcajAudi(&StogKopija); car Tekuci; cout << endl << "Neiskrcana vozila, od vrha prema dnu (ispraznjuje stog):" << endl; while (!IsEmptyS(&StogKopija)) { Tekuci = TopS(&StogKopija); PopS(&StogKopija); cout << Tekuci.broj << " " << Tekuci.proizvodjac << " "; cout << Tekuci.model << " " << Tekuci.godina_proizvodnje << endl; } break; } } while(izbor!=4); return 0; }
You need to login to post a comment.
