Advertisement
MARSHAL327

Untitled

Nov 17th, 2019
204
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.02 KB | None | 0 0
  1. #include<iostream>
  2. #include<locale>
  3. #include<math.h>
  4. using namespace std;
  5.  
  6. class cordate{
  7. private:
  8. double x;
  9. double y;
  10. public:
  11. cordate(){
  12. x=0;
  13. y=0;
  14. }
  15. cordate(int _x,int _y){
  16. x=_x;
  17. y=_y;
  18. }
  19. cordate & operator--() //перегрузка оператора —
  20. {
  21. cout«"Уменьшение на 1"«endl;
  22. this->x=this->x-1;
  23. this->y=this->y-1;
  24. return *this;
  25. }
  26. prosm(){ //просмотр тоже что и «
  27. cout«"x= "«x«endl;
  28. cout«"y= "«y«endl;
  29. }
  30. cordate operator +(const cordate &a) //перегрузка оператора +
  31. {
  32. if(a.x>x){
  33. x=(a.x-x)/2;
  34. }
  35. else{
  36. x=(x-a.x)/2;
  37. }
  38. if(a.y>y)
  39. {
  40. y=(a.y-y)/2;
  41. }
  42. else{
  43. y=(y-a.y)/2;
  44. }
  45. return cordate(x,y);
  46. }
  47.  
  48. friend cordate & operator !(cordate &a);
  49. friend cordate & operator <(const cordate &a,const cordate &b);
  50. friend ostream& operator «(ostream &out, const cordate &a);
  51. istream& operator »(istream &in) //перегрузка оператора »
  52. {
  53. in»x;
  54. in»y;
  55. }
  56. ~cordate()
  57. {
  58. x=y=0;
  59. }
  60. };
  61.  
  62. ostream& operator «(ostream &out, const cordate &a){ //перегрузка оператора «
  63. out«"x="«a.x«" y="«a.y«endl;
  64. return out;
  65. }
  66.  
  67. cordate & operator !(cordate &a)
  68. {
  69. if(a.x==0 && a.y==0)
  70. {
  71. cout«"x=0 и y=0"«endl;
  72. }
  73. else{
  74. cout«"Координаты не лежат в (0;0)"«endl;
  75. }
  76. }
  77.  
  78. cordate & operator <(const cordate &a,const cordate &b)
  79. {
  80. double x1;
  81. double y1;
  82. double dl;
  83. x1=(a.x+b.x)/2;
  84. y1=(a.x+b.y)/2;
  85. cout«"Расстояние до 0 по х="«x1«endl;
  86. cout«"Расстояние до 0 по y="«y1«endl;
  87. dl=sqrt(x1*x1+y1*y1);
  88. cout«"Расстояние до точки (0;0) от отрезка ab ="«dl«endl;
  89. }
  90.  
  91. int main()
  92. {
  93. double _x;
  94. double _y;
  95. setlocale(LC_ALL, "rus");
  96. cout«"Введите координаты точки а ";
  97. cin»_x»_y;
  98. cordate a(_x,_y);
  99. cordate b; //точка b начало координат
  100. —a;
  101. cout«a;
  102. !a;
  103. cout«a;
  104. b+a;
  105. cout«b;
  106. a<b;
  107. return 0;
  108. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement