From eda2b5dee821c474644cd72df4d0bd93b0940ec6 Mon Sep 17 00:00:00 2001 From: angeld55 Date: Tue, 17 May 2022 20:15:26 +0300 Subject: sem 12 --- Sem. 12/Example_polymorphism/Rectangle.cpp | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 Sem. 12/Example_polymorphism/Rectangle.cpp (limited to 'Sem. 12/Example_polymorphism/Rectangle.cpp') diff --git a/Sem. 12/Example_polymorphism/Rectangle.cpp b/Sem. 12/Example_polymorphism/Rectangle.cpp new file mode 100644 index 0000000..3fa1026 --- /dev/null +++ b/Sem. 12/Example_polymorphism/Rectangle.cpp @@ -0,0 +1,26 @@ +#include "Rectangle.h" + +Rectangle::Rectangle(int x1, int y1, int x3, int y3) : Shape(4) +{ + setPoint(0, x1, y1); + setPoint(1, x1, y3); + setPoint(2, x3, y3); + setPoint(3, x3, y1); +} +double Rectangle::getArea() const +{ + Shape::point p0 = getPointAtIndex(0); + Shape::point p1 = getPointAtIndex(1); + Shape::point p3 = getPointAtIndex(3); + + return p0.getDist(p1) * p0.getDist(p3); + +} +double Rectangle::getPer() const +{ + Shape::point p0 = getPointAtIndex(0); + Shape::point p1 = getPointAtIndex(1); + Shape::point p3 = getPointAtIndex(3); + + return 2*(p0.getDist(p1) + p0.getDist(p3)); +} \ No newline at end of file -- cgit v1.3.1-23-gd82d