class Rect():
def __init__(self, w, h):
self.w = w
self.h = h
def calcArea(self):
return self.w * self.h
class Circle():
def __init__(self, r):
self.r = r
def calcArea(self):
return self.r * self.r * 3.14
class AreaCalc:
def __init__(self, shapes):
self.shapes = shapes
def sumArea(self):
self.sum = sum([area.calcArea() for area in self.shapes])
def outputSum(self):
print(self.sum)
def outputSumRound(self):
print(round(self.sum))
circle = Circle(2)
rect = Rect(4, 2)
areaCalc = AreaCalc([circle, rect])
areaCalc.sumArea()
areaCalc.outputSum()
areaCalc.outputSumRound()
Y2xhc3MgUmVjdCgpOgogICAgZGVmIF9faW5pdF9fKHNlbGYsIHcsIGgpOgogICAgICAgIHNlbGYudyA9IHcKICAgICAgICBzZWxmLmggPSBoCgogICAgZGVmIGNhbGNBcmVhKHNlbGYpOgogICAgICAgIHJldHVybiBzZWxmLncgKiBzZWxmLmggIAoKY2xhc3MgQ2lyY2xlKCk6CiAgICBkZWYgX19pbml0X18oc2VsZiwgcik6CiAgICAgICAgc2VsZi5yID0gcgoKICAgIGRlZiBjYWxjQXJlYShzZWxmKToKICAgICAgICByZXR1cm4gc2VsZi5yICogc2VsZi5yICogMy4xNAoKICAgICAgCmNsYXNzIEFyZWFDYWxjOgogICAgZGVmIF9faW5pdF9fKHNlbGYsIHNoYXBlcyk6CiAgICAgICAgc2VsZi5zaGFwZXMgPSBzaGFwZXMKCiAgICBkZWYgc3VtQXJlYShzZWxmKToKICAgICAgICBzZWxmLnN1bSA9IHN1bShbYXJlYS5jYWxjQXJlYSgpIGZvciBhcmVhIGluIHNlbGYuc2hhcGVzXSkKCiAgICBkZWYgb3V0cHV0U3VtKHNlbGYpOgogICAgICAgIHByaW50KHNlbGYuc3VtKQoKICAgIGRlZiBvdXRwdXRTdW1Sb3VuZChzZWxmKToKICAgICAgICBwcmludChyb3VuZChzZWxmLnN1bSkpCgpjaXJjbGUgPSBDaXJjbGUoMikKcmVjdCA9IFJlY3QoNCwgMikKYXJlYUNhbGMgPSBBcmVhQ2FsYyhbY2lyY2xlLCByZWN0XSkKYXJlYUNhbGMuc3VtQXJlYSgpCmFyZWFDYWxjLm91dHB1dFN1bSgpCmFyZWFDYWxjLm91dHB1dFN1bVJvdW5kKCk=