Advertisement
RayaStark

Untitled

Mar 21st, 2019
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.01 KB | None | 0 0
  1. #include<iostream>
  2. #include<math.h>
  3. using namespace std;
  4. class usporednik;
  5. class kvadrat;
  6. class pravoygulnik
  7. {
  8. private:
  9. int a, b;
  10. int s1()
  11. {
  12. return a*b;
  13. }
  14. int p1()
  15. {
  16. return 2*(a+b);
  17. }
  18. public:
  19. pravoygulnik()
  20. {
  21. cout<<"a="; cin>>a;
  22. cout<<"b="; cin>>b;
  23. }
  24. int s()
  25. {
  26. return s1();
  27. }
  28. int p()
  29. {
  30. return p1();
  31. }
  32. friend void ngs(usporednik u, kvadrat k, pravoygulnik p);
  33. friend void ngp(usporednik u, kvadrat k, pravoygulnik p);
  34. };
  35. class usporednik
  36. {
  37. private:
  38. int a,b,h;
  39. int s1()
  40. {
  41. return (a*b)/2*h;
  42. }
  43. int p1()
  44. {
  45. return 2*a+2*b;
  46. }
  47. public:
  48. usporednik()
  49. {
  50. cout<<"a="; cin>>a;
  51. cout<<"b="; cin>>b;
  52. cout<<"h="; cin>>h;
  53. }
  54. int s()
  55. {
  56. return s1();
  57. }
  58. int p()
  59. {
  60. return p1();
  61. }
  62. friend void ngs(usporednik u, kvadrat k, pravoygulnik p);
  63. friend void ngp(usporednik u, kvadrat k, pravoygulnik p);
  64. };
  65. class kvadrat
  66. {
  67. private:
  68. int a;
  69. int s1()
  70. {
  71. return a*a;
  72. }
  73. int p1()
  74. {
  75. return 4*a;
  76. }
  77. public:
  78. kvadrat()
  79. {
  80. cout<<"a="; cin>>a;
  81. }
  82. int s()
  83. {
  84. return s1();
  85. }
  86. int p()
  87. {
  88. return p1();
  89. }
  90. friend void ngs(usporednik u, kvadrat k, pravoygulnik p);
  91. friend void ngp(usporednik u, kvadrat k, pravoygulnik p);
  92. };
  93. void ngs(usporednik u, kvadrat k, pravoygulnik p)
  94. {
  95. string figura = "usporednik";
  96. int s = u.s();
  97. if(k.s() > s)
  98. {
  99. figura = "kvadrat";
  100. s = k.s();
  101. }
  102. if(p.s() > s)
  103. {
  104. figura = "pravoygulnik";
  105. s = p.s();
  106. }
  107. cout<<"figurata s nai-golqmo lice e "<<figura<<" s lice "<<s<<endl;
  108. }
  109. void ngp(usporednik u, kvadrat k, pravoygulnik p)
  110. {
  111. string figura = "usporednik";
  112. int per = u.p();
  113. if(k.p() > per)
  114. {
  115. figura = "kvadrat";
  116. per = k.p();
  117. }
  118. if(p.p() > per)
  119. {
  120. figura = "pravoygulnik";
  121. per = p.p();
  122. }
  123. cout<<"figurata s nai-golqmoperimetur e "<<figura<<" s perimetur "<<per<<endl;
  124. }
  125. int main()
  126. {
  127. usporednik u;
  128. kvadrat k;
  129. pravoygulnik p;
  130. ngs(u, k, p);
  131. ngp(u, k, p);
  132. return 0;
  133. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement