fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. class Parallelepiped {
  5. public:
  6. Parallelepiped(double dlina, double shirina, double visota) {
  7. this->dlina = dlina;
  8. this->shirina = shirina;
  9. this->visota = visota;
  10. }
  11.  
  12. void vmestimost(Parallelepiped & p) {
  13. const char * pr;
  14. if (p.vmeshyaet(*this)) {
  15. pr = "vtoroi vmeshyaet perviy";
  16. } else if (vmeshyaet(p)) {
  17. pr = "perviy vmeshyaet vtoroi";
  18. } else {
  19. pr = "nikto nikogo ne vmeshyaet";
  20. }
  21. cout << pr << endl;
  22. }
  23.  
  24. private:
  25. double dlina;
  26. double shirina;
  27. double visota;
  28.  
  29. bool vmeshyaet(Parallelepiped & p) {
  30. bool dd = dlina > p.dlina;
  31. bool dv = dlina > p.visota;
  32. bool ds = dlina > p.shirina;
  33.  
  34. bool vv = visota > p.visota;
  35. bool vd = visota > p.dlina;
  36. bool vs = visota > p.shirina;
  37.  
  38. bool ss = shirina > p.shirina;
  39. bool sd = shirina > p.dlina;
  40. bool sv = shirina > p.visota;
  41.  
  42. bool ddvvss = dd && vv && ss;
  43. bool ddsvvs = dd && sv && vs;
  44. bool dvvdss = dv && vd && ss;
  45. bool dsvvsd = ds && vv && sd;
  46.  
  47. return ddvvss || dvvdss || dsvvsd;
  48. }
  49.  
  50. };
  51.  
  52.  
  53. int main() {
  54. Parallelepiped a = Parallelepiped(10,20,30);
  55. Parallelepiped b = Parallelepiped(5,10,20);
  56. Parallelepiped c = Parallelepiped(20,15,25);
  57.  
  58. a.vmestimost(b);
  59. a.vmestimost(c);
  60. b.vmestimost(c);
  61.  
  62. return 0;
  63. };
Success #stdin #stdout 0s 15240KB
stdin
Standard input is empty
stdout
perviy vmeshyaet vtoroi
nikto nikogo ne vmeshyaet
vtoroi vmeshyaet perviy