Advertisement
adwas33

Untitled

Mar 23rd, 2021
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.92 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include <algorithm>
  4. #include <iterator>
  5. using namespace std;
  6.  
  7. namespace folwark
  8. {
  9. class Zwierze
  10. {
  11. static int licznik;
  12. public:
  13. static int getLicznik();
  14. void dekrementuj_iterator(){licznik--;};
  15.  
  16. private:
  17. string nazwa;
  18. int masa;
  19. public:
  20. Zwierze()
  21. {
  22. cout<<"Tworze zwierze(kota)"<<endl;
  23. nazwa="Kot";
  24. masa=2;
  25. licznik++;
  26.  
  27. }
  28. Zwierze(string nazwa,int masa)
  29. {
  30. cout<<"Tworze zwierze("<<nazwa<<")"<<endl;
  31. this->nazwa=nazwa;
  32. this->masa=masa;
  33. licznik++;
  34.  
  35. }
  36. bool czy_ciezsze(int masa )
  37. {
  38. return (this->masa>masa);
  39. }
  40.  
  41.  
  42. ~Zwierze();
  43.  
  44. string getNazwa() ;
  45.  
  46. void setNazwa( string nazwa);
  47.  
  48. int getMasa() ;
  49.  
  50. void setMasa(int masa);
  51.  
  52. friend ostream &operator<<(ostream &os, const Zwierze &zwierze);
  53. //jest
  54.  
  55. void wypisywanie()
  56. {
  57. cout<<"Zwierze "<<nazwa<<" "<<masa<<endl;
  58. }
  59. };
  60.  
  61. }
  62. int folwark::Zwierze::licznik=0;
  63.  
  64. folwark::Zwierze::~Zwierze()
  65. {
  66. cout<<nazwa<<" o masie "<<masa<<" zostaje aktualnie usuniete "<<endl;
  67. licznik--;
  68.  
  69. }
  70.  
  71. string folwark::Zwierze::getNazwa() {
  72. return nazwa;
  73. }
  74.  
  75. void folwark::Zwierze::setNazwa( string nazwa) {
  76. Zwierze::nazwa = nazwa;
  77. }
  78.  
  79. int folwark::Zwierze::getMasa() {
  80. return masa;
  81. }
  82.  
  83. void folwark::Zwierze::setMasa(int masa) {
  84. Zwierze::masa = masa;
  85. }
  86.  
  87. int folwark::Zwierze::getLicznik() {
  88. return licznik;
  89. }
  90.  
  91. ostream &folwark::operator<<(ostream &os, const folwark::Zwierze &zwierze) {
  92. os << "nazwa: " << zwierze.nazwa << " masa: " << zwierze.masa;
  93. return os;
  94. }
  95.  
  96. string dluzsza_nazwa(folwark::Zwierze *a,folwark::Zwierze *b)
  97. {
  98. string najdluzszy;
  99. if(a->getNazwa().length()>b->getNazwa().length())
  100. {
  101. najdluzszy=a->getNazwa();
  102. }else if(a->getNazwa().length()<b->getNazwa().length())
  103. {
  104. najdluzszy=b->getNazwa();
  105. } else najdluzszy="Maja ta sama dlugosc";
  106. return najdluzszy;
  107. }
  108. int main() {
  109. folwark::Zwierze samotnik("Kon",2);
  110. samotnik.setMasa(500);
  111. samotnik.setNazwa("Slon");
  112. folwark::Zwierze * tab=new folwark::Zwierze [2];
  113.  
  114.  
  115.  
  116. tab[0].setNazwa("kot");
  117. tab[0].setMasa(5);
  118. cout<<"Liczba zwierzat aktualnie "<<tab[0].getLicznik()<<endl;
  119. if(samotnik.czy_ciezsze(400))
  120. {
  121. cout<<samotnik.getNazwa()<<" jest ciezszy niz 400 "<<endl;
  122. } else cout<<samotnik.getNazwa()<<" jest lzejszy niz 400 "<<endl;
  123. string ktore_dluzsze_w_tablicy=dluzsza_nazwa(&samotnik,&tab[1]);
  124. cout<<"W tablicy najdluzszym slowem jest "<<ktore_dluzsze_w_tablicy<<endl;
  125.  
  126. tab[1].wypisywanie();
  127.  
  128.  
  129. delete []tab;
  130. cout<<"Aktualna ilosc zwierzat "<<samotnik.getLicznik()<<endl;
  131.  
  132. return 0;
  133. }
  134.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement