Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstring>
- using namespace std;
- class Automobile
- {
- private:
- char *marka; int *reg; int speed;
- public:
- Automobile(){}
- Automobile(char *m, int *p, int speed)
- {
- marka = new char[20];
- strcpy(this->marka, m);
- reg = new int[5];
- for(int i=0;i<5;i++)
- {reg[i]=p[i];}
- this->speed=speed;
- }
- Automobile(const Automobile &a)
- {
- marka = new char[20];
- reg = new int[5];
- for(int i=0;i<5;i++)
- {this->reg[i]=a.reg[i];}
- strcpy(this->marka,a.marka);
- speed=a.speed;
- }
- int getSpeed()
- {return speed;}
- Automobile &operator=(const Automobile &a)
- {
- if(this==&a){return *this;}
- delete [] marka;
- delete [] reg;
- marka = new char[20];
- reg = new int[5];
- for(int i=0;i<5;i++)
- {reg[i]=a.reg[i];}
- strcpy(marka,a.marka);
- speed=a.speed;
- return *this;
- }
- ~Automobile()
- { delete [] marka;
- delete [] reg;}
- int sporedba(Automobile a)
- {
- for(int i=0;i<5;i++)
- {
- if((reg[i])!=a.reg[i])
- {return 0;}
- }
- return 1; // isti se
- }
- void pecati()
- {
- cout<< "Marka\t" << marka << "\tRegistracija";
- for(int i=0;i<5;i++)
- {
- if(i==0)
- {cout<<"[ ";}
- cout<<reg[i]<<' ';
- if(i==4)
- {cout << "]";}
- }
- }
- };
- class RentACar
- {
- private:
- char ime[100]; Automobile *a; int n;
- public:
- RentACar(char *ime)
- {
- strcpy(this->ime, ime);
- a = NULL;
- n=0;
- }
- ~RentACar()
- {delete [] a;}
- void add(Automobile avto)
- {
- Automobile *temp=a;
- a = new Automobile[n+1];
- for(int i=0;i<n;i++)
- {a[i]=temp[i];}
- a[n]=avto;
- delete [] temp;
- n++;
- }
- void sub(Automobile avto)
- {
- int index=0;
- for(int i=0;i<n;i++)
- {
- if(a[i].sporedba(avto))
- {index=i;}
- }
- a[index]=avto;
- }
- void pecati()
- { cout << ime<<endl;
- }
- void pecatiNadBrzina(int max)
- {
- for(int i=0;i<n;i++)
- {
- if(max<a[i].getSpeed())
- {a[i].pecati();}
- }
- }
- };
- int main()
- {
- RentACar agencija("FINKI-Car");
- int n;
- cin>>n;
- for (int i=0;i<n;i++)
- {
- char marka[100];
- int regisracija[5];
- int maximumBrzina;
- cin>>marka;
- for (int i=0;i<5;i++)
- cin>>regisracija[i];
- cin>>maximumBrzina;
- Automobile nov(marka,regisracija,maximumBrzina);
- //dodavanje na avtomobil
- agencija.add(nov);
- }
- //se cita grehsniot avtmobil, za koj shto avtmobilot so ista registracija treba da se izbrishe
- char marka[100];
- int regisracija[5];
- int maximumBrzina;
- cin>>marka;
- for (int i=0;i<5;i++)
- cin>>regisracija[i];
- cin>>maximumBrzina;
- Automobile greshka(marka,regisracija,maximumBrzina);
- //brishenje na avtomobil
- agencija.sub(greshka);
- agencija.pecati();
- agencija.pecatiNadBrzina(150);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement