Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # oryginal:
- # https://pastebin.com/bFMBQ81H
- # https://pastebin.com/Wv7gc6bp
- import math
- class GeometricObject:
- def __init__(self):
- self.color= 'black'
- self.filled = False
- def getColor(self):
- return self.color
- def getFilled(self):
- return self.filled
- def setColor(self, color):
- self.color = color
- def setFilled(self, filled):
- self.filled = filled
- class Triangle(GeometricObject):
- def __init__(self):
- super().__init__()
- self.side1 = 1.0
- self.side2 = 1.0
- self.side3 = 1.0
- def setSides(self, side1, side2, side3):
- if side1 + side2 <= side3:
- raise RuntimeError('The given three sides cannot from a triangle')
- elif side1 + side3 <= side2:
- raise RuntimeError('The given three sides cannot from a triangle')
- elif side3 + side2 <= side1:
- raise RuntimeError('The given three sides cannot from a triangle')
- self.side1 = side1
- self.side2 = side2
- self.side3 = side3
- def getArea(self):
- s = (self.side1 + self.side2 + self.side3)/2
- area = math.sqrt(s * (s-self.side1) * (s-self.side2) * (s-self.side3))
- return area
- def getPerimeter(self):
- return self.side1 + self.side2 + self.side3
- def __str__(self):
- if self.filled:
- fill = "yes"
- else:
- fill = "no"
- return "Triangle:\n side1 = {}\n side2 = {}\n side3 = {}\n color = {}\n filled: {}".format(self.side1, self.side2, self.side3, self.color, fill)
- tria = Triangle()
- tria.setFilled(True)
- print(tria)
- print(" Area:", tria.getArea())
- print(" Perimeter:", tria.getPerimeter())
- tria = Triangle()
- tria.setSides(1,4,5)
- print(tria)
- print("Area:", tria.getArea())
- print("Perimeter:", tria.getPerimeter())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement