Advertisement
Guest User

Untitled

a guest
Mar 28th, 2015
205
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.57 KB | None | 0 0
  1. #include <iostream>
  2. #include <string.h>
  3. using namespace std;
  4.  
  5. class PlDrustvo{
  6. private:
  7. char *ime;
  8. int brTuri;
  9. int brChlenovi;
  10. public:
  11. PlDrustvo (const char *ime="", const int brTuri=0, const int brChlenovi=0)
  12. {
  13. this->ime = new char[strlen(ime)+1];
  14. strcpy(this->ime, ime);
  15. this->brTuri = brTuri;
  16. this->brChlenovi = brChlenovi;
  17. }
  18.  
  19. ~PlDrustvo ()
  20. {
  21. delete [] ime;
  22. }
  23.  
  24. PlDrustvo& operator= (const PlDrustvo& dru)
  25. {
  26. if(this!=&dru)
  27. {
  28. delete [] ime;
  29. ime = new char [strlen(dru.ime)+1];
  30. strcpy(ime, dru.ime);
  31. brTuri = dru.brTuri;
  32. brChlenovi = dru.brChlenovi;
  33. return *this;
  34. }
  35. else return *this;
  36. }
  37.  
  38. friend bool operator> (const PlDrustvo& dru, const PlDrustvo& dru2)
  39. {
  40. if(dru.brChlenovi > dru2.brChlenovi) return true;
  41. else return false;
  42. }
  43.  
  44. friend bool operator< (const PlDrustvo& dru, const PlDrustvo& dru2)
  45. {
  46. if(dru.brChlenovi < dru2.brChlenovi) return true;
  47. else return false;
  48. }
  49.  
  50. PlDrustvo operator+ (const PlDrustvo& dru)
  51. {
  52. PlDrustvo pom;
  53. if(*this > dru)
  54. {
  55. delete[] pom.ime;
  56. pom.ime = new char[strlen(ime)+1];
  57. strcpy(pom.ime, ime);
  58. pom.brTuri = brTuri;
  59. pom.brChlenovi = brChlenovi + dru.brChlenovi;
  60. }
  61. else
  62. {
  63. delete[] pom.ime;
  64. pom.ime = new char[strlen(dru.ime)+1];
  65. strcpy(pom.ime, dru.ime);
  66. pom.brTuri = dru.brTuri;
  67. pom.brChlenovi = brChlenovi + dru.brChlenovi;
  68. }
  69. return pom;
  70. }
  71.  
  72. friend ostream& operator<< (ostream& o, const PlDrustvo& dru)
  73. {
  74. o<<"Ime: "<<dru.ime<<" Turi: "<<dru.brTuri<<" Clenovi: "
  75. <<dru.brChlenovi<<endl;
  76. return o;
  77. }
  78.  
  79. friend void najmnoguClenovi (const PlDrustvo *dru, int n)
  80. {
  81. PlDrustvo pom;
  82. for(int i=0; i<n; i++)
  83. {
  84. if(dru[i] > pom) pom = dru[i];
  85. }
  86. cout<<"Najmnogu clenovi ima planinarskoto drustvo: "<<pom;
  87. }
  88. };
  89.  
  90. int main()
  91. {
  92. PlDrustvo drustva[3];
  93. PlDrustvo pl;
  94. for (int i=0;i<3;i++)
  95. {
  96. char ime[100];
  97. int brTuri;
  98. int brClenovi;
  99. cin>>ime;
  100. cin>>brTuri;
  101. cin>>brClenovi;
  102. PlDrustvo p(ime,brTuri,brClenovi);
  103. drustva[i] = p;
  104. }
  105.  
  106. pl = drustva[0] + drustva[1];
  107. cout<<pl;
  108.  
  109. najmnoguClenovi(drustva, 3);
  110.  
  111. return 0;
  112. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement