import math

class Punto:

    def __init__(self, x = 0 , y = 0):
        self.x = x
        self.y = y
    
    def __str__(self):
        return ("{}, {}".format(self.x, self.y))
    
    def __cuadrante__(self):
        if self.x > 0 and self.y > 0:
            print("{} Pertenece al primer cuadrante".format(self))
        elif self.x < 0 and self.y > 0:
            print("{} Pertenece al segundo cuadrante".format(self))
        elif self.x < 0 and self.y < 0:
            print("{} Pertenece al tercer cuadrante".format(self))
        elif self.x > 0 and self.y < 0:
            print("{} Pertenece al cuarto cuadrante".format(self))
        else:
            print("{} Se encuentra sobre el origen".format(self))
    
    def __vector__(self, p):
        print("El vector entre {} y {} es ({}, {})".format(self, p, p.x - self.x, p.y - self.y))

    def __distancia__(self, p):
        d = math.sqrt((p.x - self.x)**2 + (p.y - self.y)**2 )
        print("La distancias entre los puntos {} y {} es {}".format(self, p, d))
A = Punto(2,3)
B = Punto(5,5)
C = Punto(-3,-1)
D = Punto(0,0)

A.__cuadrante__()
B.__cuadrante__()
C.__cuadrante__()
D.__cuadrante__()

A.__vector__(B)
B.__vector__(A)

A.__distancia__(B)
B.__distancia__(A)

A.__distancia__(D)
B.__distancia__(D)
C.__distancia__(D)