In: Computer Science
Python Please
An n-sided regular polygon has all its sides of the same length and all its angles of the same degree. It is also called an equilateral and equiangular polygon. In this activity, you will design a class named RegularPolygon that contains:
Write a main function to test the RegularPolygon class.
import math
class RegularPolygon:
    # default sides is 3 and default side of length = 1
    # all the members are set private
    def __init__(self, n = 3, side = 1):
        self.__n = n
        self.__side = side
    # accessors and mutators for sides and length
    # of side
    def setN(self, n):
        self.__n = n
    def getN(self):
        return self.__n
    def setSide(self, side):
        self.__side = side
    def getSide(self):
        return self.__side
    # calculating perimeter
    def getPerimeter(self):
        return self.__n * self.__side
    # calculating area
    def getArea(self):
        return (self.__n*self.__side)/(4*math.tan(math.pi/self.__n))
    # returns the string of all properties
    # of RegularPolygon object
    def __str__(self):
        return "Side         : " + str( self.getSide() ) + "\n"+ \
               "No. of Sides : " + str( self.getN() ) + "\n" + \
               "Perimeter    : " + str( self.getPerimeter() ) + "\n" + \
               "Area         : " + str( self.getArea() );
if __name__ == '__main__':
    rp1 = RegularPolygon()
    print(rp1)
    print("----------------------------")
    rp2 = RegularPolygon(5, 12.5)
    print(rp2)
    print("----------------------------")
    rp3 = RegularPolygon()
    rp3.setN(6)
    rp3.setSide(10.5)
    print(rp3)
    print("----------------------------")
    rp4 = RegularPolygon(side = 10)
    print(rp4)
    print("----------------------------")
Code
Output