Develop an inheritance hierarchy based upon a Polygon class that has abstract methods {{ area( ) and perimeter( ) }}, and three instance variables (attributes) of type int (number of dimensions), float (value of perimeter), and float (value of area). Your class must include a constructor method that initializes the int variable to an appropriate value. Implement classes Triangle, Quadrilateral, Pentagon, Hexagon, and Octagon extend this base class (Polygon), with the obvious meanings for the area( ) and perimeter( ) methods. Also implement classes, IsoscelesTriangle, EquilateralTriangle, Rectangle, and Square, that have the appropriate inheritance relationships. Finally, write a simple program (to test your classes), that allows users to create polygons of the various types and input their geometric dimensions, and the program then outputs their area and perimeter.
Develop an inheritance hierarchy based upon a Polygon class that has abstract methods {{ area( ) and perimeter( ) }}, and three instance variables (attributes) of type int (number of dimensions), float (value of perimeter), and float (value of area). Your class must include a constructor method that initializes the int variable to an appropriate value.
Implement classes Triangle, Quadrilateral, Pentagon, Hexagon, and Octagon extend this base class (Polygon), with the obvious meanings for the area( ) and perimeter( ) methods. Also implement classes, IsoscelesTriangle, EquilateralTriangle, Rectangle, and Square, that have the appropriate inheritance relationships.
Finally, write a simple program (to test your classes), that allows users to create polygons of the various types and input their geometric dimensions, and the program then outputs their area and perimeter.
Allow users to input polygons by specifying their number of dimensions and be able to test if two such polygons are similar ((by including a definition for the __eq__ method, so that expression polygon1 == polygon2 will return True precisely when the two
polygons are similar)). Similar means that both polygons are instances of the same class.
Use try-and-except to catch if the inputted dimensions are not numeric !!
python language
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 1 images