Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- #include<locale>
- #include<math.h>
- using namespace std;
- class cordate{
- private:
- double x;
- double y;
- public:
- cordate(){
- x=0;
- y=0;
- }
- cordate(int _x,int _y){
- x=_x;
- y=_y;
- }
- cordate & operator--() //перегрузка оператора —
- {
- cout«"Уменьшение на 1"«endl;
- this->x=this->x-1;
- this->y=this->y-1;
- return *this;
- }
- prosm(){ //просмотр тоже что и «
- cout«"x= "«x«endl;
- cout«"y= "«y«endl;
- }
- cordate operator +(const cordate &a) //перегрузка оператора +
- {
- if(a.x>x){
- x=(a.x-x)/2;
- }
- else{
- x=(x-a.x)/2;
- }
- if(a.y>y)
- {
- y=(a.y-y)/2;
- }
- else{
- y=(y-a.y)/2;
- }
- return cordate(x,y);
- }
- friend cordate & operator !(cordate &a);
- friend cordate & operator <(const cordate &a,const cordate &b);
- friend ostream& operator «(ostream &out, const cordate &a);
- istream& operator »(istream &in) //перегрузка оператора »
- {
- in»x;
- in»y;
- }
- ~cordate()
- {
- x=y=0;
- }
- };
- ostream& operator «(ostream &out, const cordate &a){ //перегрузка оператора «
- out«"x="«a.x«" y="«a.y«endl;
- return out;
- }
- cordate & operator !(cordate &a)
- {
- if(a.x==0 && a.y==0)
- {
- cout«"x=0 и y=0"«endl;
- }
- else{
- cout«"Координаты не лежат в (0;0)"«endl;
- }
- }
- cordate & operator <(const cordate &a,const cordate &b)
- {
- double x1;
- double y1;
- double dl;
- x1=(a.x+b.x)/2;
- y1=(a.x+b.y)/2;
- cout«"Расстояние до 0 по х="«x1«endl;
- cout«"Расстояние до 0 по y="«y1«endl;
- dl=sqrt(x1*x1+y1*y1);
- cout«"Расстояние до точки (0;0) от отрезка ab ="«dl«endl;
- }
- int main()
- {
- double _x;
- double _y;
- setlocale(LC_ALL, "rus");
- cout«"Введите координаты точки а ";
- cin»_x»_y;
- cordate a(_x,_y);
- cordate b; //точка b начало координат
- —a;
- cout«a;
- !a;
- cout«a;
- b+a;
- cout«b;
- a<b;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement