Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstring>
- using namespace std;
- //Vasiot kod tuka
- class Pica{
- private:
- char name[15];
- int price;
- char *ing;
- int discount;
- public:
- Pica(char *name="", int price=0, char *ing="", int discount=0){
- strcpy(this->name,name);
- this->price=price;
- this->discount=discount;
- this->ing = new char[strlen(ing)+1];
- strcpy(this->ing,ing);
- }
- Pica(const Pica& p){
- strcpy(name,p.name);
- price=p.price;
- discount=p.discount;
- ing = new char[strlen(p.ing)+1];
- strcpy(ing,p.ing);
- }
- Pica& operator=(const Pica& p){
- if (this==&p) return *this;
- strcpy(name,p.name);
- price=p.price;
- discount=p.discount;
- delete [] ing;
- ing = new char[strlen(p.ing)+1];
- strcpy(ing,p.ing);
- return *this;
- }
- void pecati(){
- cout<<name<<" - "<<ing<<", "<<price;
- }
- bool istiSe(Pica p){
- if (strcmp(ing,p.ing)==0) return true;
- return false;
- }
- char* getSostojki(){return ing;}
- int getD(){ return discount; }
- int getCena(){ return price; }
- ~Pica(){
- delete [] ing;
- }
- };
- class Picerija{
- private:
- char name[15];
- Pica *pici;
- int br;
- public:
- Picerija(char *ime=""){
- strcpy(name,ime);
- br=0;
- pici=new Pica[1];
- Pica x;
- pici[0]=x;
- }
- Picerija (Picerija& p){
- strcpy(name,p.name);
- br=p.br;
- pici=new Pica[p.br];
- for(int i=0;i<br;i++){
- pici[i]=p.pici[i];
- }
- }
- Picerija& operator=(Picerija& p){
- if(this==&p) return *this;
- strcpy(name,p.name);
- br=p.br;
- delete [] pici;
- pici=new Pica[p.br];
- for(int i=0;i<br;i++){
- pici[i]=p.pici[i];
- }
- return *this;
- }
- void dodadi(Pica p){
- for(int i=0;i<br;i++){
- if (strcmp(p.getSostojki(),pici[i].getSostojki())==0) return;
- }
- Pica *tmp;
- tmp=new Pica[br+1];
- for(int i=0;i<br;i++) tmp[i]=pici[i];
- tmp[br]=p;
- delete [] pici;
- pici=tmp;
- br++;
- }
- void piciNaPromocija(){
- for(int j=0;j<br;j++){
- if(pici[j].getD()>0){
- pici[j].pecati();
- float c=pici[j].getCena()/float(100);
- float x=pici[j].getCena()-c*pici[j].getD();
- cout<<" "<<x<<endl;
- }
- }
- }
- void setIme(char* ime){ strcpy(name,ime); }
- char* getIme(){ return name; }
- ~Picerija(){
- delete [] pici;
- }
- };
- int main () {
- int n;
- char ime[15];
- cin >> ime;
- cin >> n;
- Picerija p1(ime);
- for(int i = 0; i < n; i++){
- char imp[100];
- cin.get();
- cin.getline(imp,100);
- int cena;
- cin >> cena;
- char sostojki[100];
- cin.get();
- cin.getline(sostojki,100);
- int popust;
- cin >> popust;
- Pica p(imp,cena,sostojki,popust);
- p1.dodadi(p);
- }
- Picerija p2 = p1;
- cin >> ime;
- p2.setIme(ime);
- char imp[100];
- cin.get();
- cin.getline(imp,100);
- int cena;
- cin >> cena;
- char sostojki[100];
- cin.get();
- cin.getline(sostojki,100);
- int popust;
- cin >> popust;
- Pica p(imp,cena,sostojki,popust);
- p2.dodadi(p);
- cout<<p1.getIme()<<endl;
- cout<<"Pici na promocija:"<<endl;
- p1.piciNaPromocija();
- cout<<p2.getIme()<<endl;
- cout<<"Pici na promocija:"<<endl;
- p2.piciNaPromocija();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement