Jelo

 avatar
unknown
c_cpp
4 years ago
1.8 kB
6
Indexable
class Jelo
{
private:
    string ime;         // Ime jela
    Sastojak *sastojci; // Lista sastojaka za jelo
    int kol;            // Kolicina jela u gramima
    int brS;            // Broj sastojaka
    int sat;            // Vreme formiranja jela
    int promena;        // Procentualna promena cene
    VrstaJela vrsta;    // Vrsta jela

public:
    Jelo() {}
    Jelo(string i, int s, VrstaJela v)
    {
        ime = i;
        sat = s;
        vrsta = v;
    }

    void operator+=(Sastojak s)
    {
        if (((vrsta == P || vrsta == G) && (s.getV() == SLAN || s.getV() == NEUT)) || ((vrsta == D) && (s.getV() == SLAD)))
        {
            int i;
            int brS = sizeof(sastojci) / sizeof(sastojci[0]); // Nadjemo broj elemenata u nizu sastojci
            if (brS != 0)
            {
                Sastojak *pomNiz = new Sastojak[brS];
                for (i = 0; i < brS; i++)
                {
                    pomNiz[i] = sastojci[i]; // Prepisemo sve u pomocni niz
                }
                delete[] sastojci;

                sastojci = new Sastojak[++brS]; // Povecamo br elemenata niza
                for (i = 0; i < (brS - 1); i++)
                {
                    sastojci[i] = pomNiz[i]; // prepisemo iz pomocnog
                }
                sastojci[i] = s; // Dodamo na kraj
            }
            else
            { // Ovo je ako nema nijedan sastojak
                sastojci = new Sastojak[1]; 
                sastojci[0] = s;
            }
        }
        else // Ako se ne poklapa vrsta sastojka
        {
            cout << "Ne moze taj sastojak";
        }
    }

    void setSat(int s) { sat = s; }
    void setPromena(int p) { promena = p; }
};
Editor is loading...