Guest User

Untitled

a guest
Dec 27th, 2018
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.79 KB | None | 0 0
  1. class Point:
  2. def __init__(self, x,y):
  3. self.x = x
  4. self.y = y
  5. def __str__(self):
  6. return "point("+str(self.x)+"," +str(self.y)+")"
  7. class hexagon:
  8. def __init__(self, A,B,C,D,E,F):
  9. self.A=A
  10. self.B=B
  11. self.C=C
  12. self.D=D
  13. self.E=E
  14. self.F=F
  15. def __str__(self):
  16. r="hexagon(" +str(self.A) +"," +str(self.B) +"," +str(self.C) +"," +str(self.D) +"," +str(self.E) +"," +str(self.F) + ")"
  17. return r
  18. def sides(self):
  19. AB= ((self.B.x-self.A.x)**2+(self.B.y-self.A.y)**2)**(1/2)
  20. BC= ((self.C.x-self.B.x)**2+(self.C.y-self.B.y)**2)**(1/2)
  21. CD= ((self.D.x-self.C.x)**2+(self.D.y-self.C.y)**2)**(1/2)
  22. DE= ((self.E.x-self.D.x)**2+(self.E.y-self.D.y)**2)**(1/2)
  23. EF= ((self.F.x-self.E.x)**2+(self.F.y-self.E.y)**2)**(1/2)
  24. FA= ((self.A.x-self.F.x)**2+(self.A.y-self.F.y)**2)**(1/2)
  25. return AB,BC,CD,DE,EF,FA
  26. def perim(self):
  27. a,b,c,d,e,f= self.sides()
  28. return a+b+c+d+e+f
  29. A=Point (0.0,0.0)
  30. B=Point (0.0,3.0)
  31. C=Point (4.0,1.0)
  32. D=Point (5.0,1.0)
  33. E=Point (6.0,1.0)
  34. F=Point (7.0,2.0)
  35. print(A.__str__(), B.__str__(), C.__str__(), D.__str__(), E.__str__(), F.__str__())
  36. hx1=hexagon(A,B,C,D,E,F)
  37. print(hx1.__str__())
  38. print(hx1.sides())
  39. print(hx1.perim())
  40.  
  41. from math import sqrt
  42.  
  43. class Point:
  44. def __init__(self, x, y):
  45. self.x = x
  46. self.y = y
  47.  
  48. class Hexagon:
  49. def __init__(self, *points):
  50. self.points = list(points)
  51.  
  52. self.sides = list()
  53.  
  54. self.perim()
  55.  
  56. def perim(self):
  57. self.perim = 0
  58.  
  59. for i in range(len(self.points)):
  60. start = self.points[i - 1]
  61. end = self.points[i]
  62.  
  63. side = sqrt((end.x - start.x)**2 + (end.y - start.y)**2)
  64.  
  65. self.sides.append(side)
  66.  
  67. self.perim += side
  68.  
  69.  
  70. a = Point(0, 0)
  71.  
  72. b = Point(1, 1)
  73.  
  74. c = Point(2, 0)
  75.  
  76. ABC = Hexagon(a, b, c)
  77.  
  78. print(ABC.perim)
Add Comment
Please, Sign In to add comment