#include "cetverougao.h" #include #include using namespace std; Cetverougao::Cetverougao() : Poligon(4) {} Cetverougao::Cetverougao(double x1,double y1,double x2,double y2,double x3,double y3,double x4,double y4): Poligon(4) { t[0].setX(x1); t[0].setY(y1); t[1].setX(x2); t[1].setY(y2); t[2].setX(x3); t[2].setY(y3); t[3].setX(x4); t[3].setY(y4); } void Cetverougao::print() { cout << " Cetverougao ABCD: "; cout << "A(" << t[0].getX() << "," << t[0].getY() << ")-"; cout << "B(" << t[1].getX() << "," << t[1].getY() << ")-"; cout << "C(" << t[2].getX() << "," << t[2].getY() << ")-"; cout << "D(" << t[3].getX() << "," << t[3].getY() << ")"; } double Cetverougao::obim() { double o=0; for(int i=0;i<3;i++) o+=sqrtf(pow(t[i].getX()-t[i+1].getX(),2)+pow(t[i].getY()-t[i+1].getY(),2)); o+=sqrtf(pow(t[0].getX()-t[3].getX(),2)+pow(t[0].getY()-t[3].getY(),2)); return o; } double Cetverougao::povrsina() { double a,b,c,s,p=0; for(int i=1;i<=2;i++) { a=sqrtf(pow(t[0].getX()-t[i+1].getX(),2)+pow(t[0].getY()-t[i+1].getY(),2)); b=sqrtf(pow(t[0].getX()-t[i].getX(),2)+pow(t[0].getY()-t[i].getY(),2)); c=sqrtf(pow(t[i].getX()-t[i+1].getX(),2)+pow(t[i].getY()-t[i+1].getY(),2)); s=(a+b+c)/2; p+= sqrtf(s*(s-a)*(s-b)*(s-c)); } return p; } Poligon* Cetverougao::operator--() { return new Trougao(t[0].getX(),t[0].getY(),t[1].getX(),t[1].getY(),t[2].getX(),t[2].getY()); }