Return to Snippet

Revision: 35878
at November 15, 2010 02:35 by lugerovac


Initial Code
#include <iostream>
//#include "stog_polje.h"
#include "stog_pokazivac.h"
using namespace std;

st *stog  = InitS(stog);

unsigned short izbornik()
{
    cout << "\n--------------------------------\n";
    cout << "1. Dodavanje novog zapisa u bazu\n";
    if(!IsEmptyS(stog)) cout << "2. Ispis svih zapisa\n";
    if(!IsEmptyS(stog)) cout << "3. Iskrcavanje automobila (noviji od 2006 i nisu Audi)\n";
    if(!IsEmptyS(stog)) cout << "4. Iskrcavanje automobila (samo Audi)\n";
    cout << "0. Izlaz iz programa\n";
    cout << "--------------------------------\n";
    
    unsigned short izb;    
    do
    {
        cout << "Vas izbor: ";
        cin >> izb;
        if(izb > 4) cout << "Nevaljati unos!\n";
    }while(izb > 4);
    
    return izb;
}  //unsigned short izbornik()


void dodaj()
{
    automobil novi;
    cin.ignore();
    
    cout << "\nSerijski broj: ";
    cin.getline(novi.sb, sizeof(novi.sb));
    cout << "Proizvodjac: ";
    cin.getline(novi.proizv, sizeof(novi.proizv));
    cout << "Model: ";
    cin.getline(novi.model, sizeof(novi.model));
    
    cout << "Godina proizvodnje (u rasponu 1995-2010): ";
    cin >> novi.godp;
    
    if(novi.godp < 1995) novi.godp = 1995;
    else if(novi.godp > 2010) novi.godp = 2010;
    
    PushS(novi, stog);
}  //void dodaj()


void ispis()
{ 
    automobil isp[1000];
    int top = 0;
    
    while(!(IsEmptyS(stog)))
    {
        isp[top] = TopS(stog);
        PopS(stog);
        
        cout << "\n--------------------------------------------------";
        cout << "\nSerijski broj: " << isp[top].sb;
        cout << "\nProizvodjac: " << isp[top].proizv;
        cout << "\nModel: " << isp[top].model;
        cout << "\nGodina proizvodnje: " << isp[top].godp;
        cout << "\n--------------------------------------------------\n";
        
        top++;
    }  //while(!(IsEmpty(pom)))
    
    for(int i = top - 1; i >= 0; i--)
        PushS(isp[i], stog);
}  //void ispis()


void iskrcaj2()
{
    if(!IsEmptyS(stog))
    {
        automobil p = TopS(stog);
        PopS(stog);
        if(!IsEmptyS(stog)) iskrcaj2();
        
        if(strcmp(p.proizv, "Audi") == 0)
        {
            cout << "\n--------------------------------------------------";
            cout << "\nSerijski broj: " << p.sb;
            cout << "\nProizvodjac: " << p.proizv;
            cout << "\nModel: " << p.model;
            cout << "\nGodina proizvodnje: " << p.godp;
            cout << "\n--------------------------------------------------\n";
        }else PushS(p, stog);
    }
}  //void iskrcaj2() 


void iskrcaj()
{
    cout << "\nIskrcavanje u prvoj auto kuci:\n";
    st *pom = InitS(pom);
    
    while(!IsEmptyS(stog))
    {
        automobil p = TopS(stog);
        if(strcmp(p.proizv, "Audi") != 0 && p.godp > 2006)
        {
            cout << "\n--------------------------------------------------";
            cout << "\nSerijski broj: " << p.sb;
            cout << "\nProizvodjac: " << p.proizv;
            cout << "\nModel: " << p.model;
            cout << "\nGodina proizvodnje: " << p.godp;
            cout << "\n--------------------------------------------------\n";
            
            PopS(stog);
        }else
        {
            PushS(p, pom);
            PopS(stog);
        }  //if(strcmp(p.proizv, "Audi") != 0 && p.godp > 2006)
    }  //while(!IsEmpty(stog))
    
    while(!(IsEmptyS(pom)))
    {
        automobil p = TopS(pom);
        PushS(p, stog);
        PopS(pom);
    }  //while(!(IsEmpty(pom))
    
    system("pause");
    cout << "\nAuti koji se nisu iskrcali:\n";
    ispis();
}  //void iskrcaj()


int main()
{
    unsigned short izb;
    do
    {
        izb = izbornik();
        switch(izb)
        {
            case 1:
                dodaj();
                break;
                
            case 2:
                ispis();
                break;
                
            case 3:
                iskrcaj();
                break;
                
            case 4:
                iskrcaj2();
                break;
        }
    }while(izb != 0);
    
    system("pause");
    return 0;
}

Initial URL


Initial Description
Glavni program mog zadatka

Initial Title
Z2_lugerovac.cpp

Initial Tags


Initial Language
C++