Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstring>
- using namespace std;
- class MSquad {
- private:
- char *name;
- int tours;
- int members;
- public:
- MSquad() { name = NULL; }
- ~MSquad() { delete [] name; }
- MSquad(const MSquad &m){
- name = new char[strlen(m.name) + 1];
- strcpy(name, m.name);
- tours = m.tours;
- members = m.members;
- }
- MSquad(const char *n, int t, int m){
- name = new char[strlen(n) + 1];
- strcpy(name, n);
- tours = t;
- members = m;
- }
- MSquad &operator = (const MSquad &m){
- if(this == &m) { return *this; }
- delete [] name;
- name = new char[strlen(m.name) + 1];
- strcpy(name, m.name);
- tours = m.tours;
- members = m.members;
- return *this;
- }
- friend MSquad operator + (const MSquad &lhs, const MSquad &rhs){
- if(lhs.members > rhs.members){
- return MSquad(lhs.name, lhs.tours, lhs.members + rhs.members);
- }
- return MSquad(rhs.name, rhs.tours, lhs.members + rhs.members);
- }
- inline bool operator > (const MSquad &rhs){
- return members > rhs.members;
- }
- inline bool operator < (const MSquad &rhs){
- return members < rhs.members;
- }
- friend ostream &operator<<(ostream &out, const MSquad &m) {
- out << "Ime: " << m.name << " Turi: " << m.tours << " Clenovi: " << m.members << endl;
- return out;
- }
- friend void mostMembers(const MSquad m[], int len){
- int max = 0;
- for (int i = 0; i < len; ++i) {
- if(m[i].members > m[max].members){
- max = i;
- }
- } cout<<"Najmnogu clenovi ima planinarskoto drustvo: "<< m[max];
- }
- };
- int main() {
- MSquad squads[3];
- MSquad s;
- for (int i = 0; i < 3; i++) {
- char name[100];
- int tours;
- int members;
- cin >> name;
- cin >> tours;
- cin >> members;
- squads[i] = MSquad(name, tours, members);
- }
- s = squads[0] + squads[1];
- cout << s;
- mostMembers(squads, 3);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement