Advertisement
Infiniti_Inter

Задача на классы(7)

May 14th, 2019
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.10 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <vector>
  4. #include <algorithm>
  5.  
  6.  
  7. using namespace std;
  8.  
  9. class Point
  10. {
  11.     double x, y, z;
  12.     static int count;
  13. public:
  14.     Point()
  15.     {
  16.         x = y = z = 0;
  17.         count++;
  18.     }
  19.     Point(double x, double y, double z)
  20.     {
  21.         count++;
  22.         this->x = x;
  23.         this->y = y;
  24.         this->z = z;
  25.     }
  26.     int getCount()
  27.     {
  28.         return count;
  29.     }
  30.     double range()
  31.     {
  32.         return sqrt(x*x + y * y + z * z);
  33.     }
  34.     double getX()
  35.     {
  36.         return x;
  37.     }
  38.     double getY()
  39.     {
  40.         return y;
  41.     }
  42.     double getZ()
  43.     {
  44.         return z;
  45.     }
  46.     void show()
  47.     {
  48.         cout << x << ' ' << y << ' ' << z << "\n\n";
  49.     }
  50.     bool operator < (Point & a)
  51.     {
  52.         return (this->range() < a.range());
  53.     }
  54. };
  55. int Point::count = 0;
  56.  
  57. const int MAXSIZE = 100;
  58. int main()
  59. {
  60.    
  61.     ifstream in("input.txt");
  62.     Point a(1, 2, 4);
  63.     Point b(2, 3, 5);
  64.     Point c;
  65.     a.show();
  66.     b.show();
  67.     c.show();
  68.     cout << "created " << a.getCount() << " objects\n\n";
  69.     if (a < b)
  70.         cout << "a less than b\n\n";
  71.     else
  72.         cout << "a greater than b\n\n";
  73.     cout << a.range();//расстояние от точки a до начала координат
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement