Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Cassini - punto.py

punto.py

Caricato da: Poggi Marco
Scarica il programma completo

  1. import math
  2.  
  3. class Punto:
  4.  
  5.      def __init__(self):
  6.           """Costruttore"""
  7.           self.x=0.0
  8.           self.y=0.0
  9.  
  10.      def __str__(self):
  11.           """Conversione a stringa"""
  12.           try:
  13.                messaggio='(%8.4f; %8.4f)' %(self.x, self.y)
  14.           except TypeError:
  15.                messaggio='(---)'
  16.           return messaggio
  17.  
  18.      def distanza(self,altro):
  19.           """Calcola la distanza tra due punti"""
  20.           dx=altro.x-self.x
  21.           dy=altro.y-self.y
  22.           return math.pow(dx*dx + dy*dy, 0.5)
  23.  
  24.      def modulo(self):
  25.           """Calcola la distanza dall' origine"""
  26.           return self.distanza(Punto())
  27.  
  28.      def __eq__(self, altro):
  29.           """Uguaglianza"""
  30.           return self.distanza(altro)==0.0
  31.  
  32.      def __ne__(self, altro):
  33.           """Disuguaglianza"""
  34.           return not(self==altro)
  35.  
  36.      def clona(self):
  37.           """Restituisce la copia per valore"""
  38.           nuovo=Punto()
  39.           nuovo.x=self.x
  40.           nuovo.y=self.y
  41.           return nuovo
  42.  
  43.      def area(self, altro):
  44.           """Calcola l' area sottesa tra i due punti"""
  45.           base=abs(self.x-altro.x)
  46.           altezza=self.y+altro.y
  47.           return 0.5*base*altezza