Return to Snippet

Revision: 35942
at November 15, 2010 08:39 by tojakopec


Initial Code
#include<iostream>

#include "stog_polje.h"
//#include "stog_pokazivac.h"

using namespace std;

void unos(stack *S)
{
     elementtype x;
     cout << "Sifra: ";
     cin >> x.sbroj;
     cout << "Proizvodac: ";
     cin.ignore();
     cin.getline(x.proiz,20);
     cout << "Model: ";
     cin.getline(x.model,20);
     bool flag = false;
     do
     {
        if( flag ) cout << "KRIVI UNOS\n";
        cout << "Godina proizvodnje): ";
        cin >> x.godina;
        flag = true;
     }while(x.godina < 1995 || x.godina > 2010);
     Push(x, S);
}
void iskrcavanje1(stack *st1)
{     
                       elementtype temp;
                       stack tempStog;
                       Init(&tempStog);
                       while(!IsEmpty(st1))
                       {

                           temp = Top(st1);
                           Pop(st1);
                           Push(temp, &tempStog);
                           if(temp.godina >= 2006 && stricmp(temp.proiz, "audi"))
                           {
                                              cout << "BRISEM ELEMENT:"; 
                                              cout << "\nSerijski broj: " << temp.sbroj
                                                   << "\nProizvodac: " << temp.proiz
                                                   << "\nModel: " << temp.model
                                                   << "\nGodina proizvodnje: " << temp.godina << endl;                                        
                           }                          
                       }    
                       cout << endl;
                       
                       if(!IsEmpty(&tempStog))
                       {
                           cout << "STANJE STOGA!" << endl;
                           while(!IsEmpty(&tempStog))
                           {
                                  temp = Top(&tempStog);
                                  Pop(&tempStog);
                                  if(temp.godina < 2006 || !(stricmp(temp.proiz, "audi")) )
                                  {
                                                          Push(temp, st1);               
                                                          cout << "\nSerijski broj: " << temp.sbroj
                                                               << "\nProizvodac: " << temp.proiz
                                                               << "\nModel: " << temp.model
                                                               << "\nGodina proizvodnje: " << temp.godina << endl;          
                                  }
                                  
                                  
                           }
                       }
}          
void iskrcavanje2(stack *S)
{            
            if(!IsEmpty(S))
            {
                elementtype temp = Top(S);
                Pop(S);
                if(!IsEmpty(S))
                               iskrcavanje2(S);
                if(!(stricmp(temp.proiz, "audi")))
                {
                          cout << "Serijski broj: " << temp.sbroj << endl
                               << "Proizvodac: " << temp.proiz << endl
                               << "Model: " << temp.model << endl
                               << "Godina proizvodnje: " << temp.godina << endl << endl;                                                                
                }          
                else
                    Push(temp, S);
                return;
            }
}
int main()
{
    stack st1;
    elementtype element;
    Init(&st1);
    
    int brojacZapisa = 0;
    int brojacUpisa = 0;
    int izbor,izbor2;
        do{
            system("cls");
            cout << endl;
            cout << "----------IZBORNIK----------" << endl;
            cout << "1. Ukrcavanje automobila" << endl;
            cout << "2. Iskrcavanje automobila" << endl;
            cout << "0. Izlaz" << endl;
            cout << "----------------------------" << endl;
            cout << "Odabir: ";
            cin >> izbor;
            cout << endl;
            switch(izbor)
            {
                          case 1:
                               unos(&st1);
                               brojacZapisa++;
                               break;
                          case 2:
                               cout<<"Odaberi vrstu iskrcavanja: \n";
                               cout<<"1. Proizvodnja iza 2006./ ne Audi \n";
                               cout<<"2. Audi \n";
                               cin >> izbor2;
                               switch (izbor2)
                               {
                               case 1:
                               iskrcavanje1(&st1);
                               break;
                               case 2:
                               iskrcavanje2(&st1);   
                               break;
                               }
                          case 0:
                               break;
                          default:
                               cout<<"KRIVI ODABIR!\n";
            } 
            system("pause");
        }while(izbor != 0);
        return 0;
}

Initial URL


Initial Description


Initial Title
Zadatak 2 - main.cpp

Initial Tags


Initial Language
C++