Описать класс треугольник через координаты трех точек - C#
Формулировка задачи:
class Triangle { // поля double Ax; double Ay; double Bx; double By; double Cx; double Cy; double ab; double ac; double bc; // свойства public double AX { get { return Ax; } set { Ax = value; } } public double AY { get { return Ay; } set { Ay = value; } } public double BX { get { return Bx; } set { Bx = value; } } public double BY { get { return By; } set { By = value; } } public double CX { get { return Cx; } set { Cx = value; } } public double CY { get { return Cy; } set { Cy = value; } } // конструктор public Triangle(double x1, double y1, double x2, double y2, double x3, double y3) { AX = x1; AY = y1; BX = x2; BY = y2; CX = x3; CY = y3; } // длины сторон public double Length(double x1,double y1,double x2,double y2) { return Math.Sqrt(Math.Pow(x1 - x2, 2) + Math.Pow(y1 - y2, 2)); } // существование треугольника public bool Exist() { return (ab.Length() + bc.Length() > ac.Length()) && (bc.Length() + ac.Length() > ab.Length()) && (ab.Length() + ac.Length() > bc.Length()); } //углы треугольника public double Ygl() { return ((Math.Pow(ab, 2) + Math.Pow(ac, 2) - Math.Pow(bc, 2)) / (2 * ab * ac)); } //периметр public double Per() { return +bc.Length() + ac.Length(); } // площадь public double Square() { double p = this.Per() / 2; return Math.Sqrt(p * (p - ab) * (p - bc) * (p - ac)); } }
Решение задачи: «Описать класс треугольник через координаты трех точек»
textual
Листинг программы
//углы треугольника public double Ygl() { return ((Math.Pow(Length(Ax, Bx, Ay, By), 2) + Math.Pow(Length(Ax, Cx, Ay, Cy), 2) - Math.Pow(Length(Bx, Cx, By, Cy), 2)) / (2 * Length(Ax, Bx, Ay, By) * Length(Ax, Cx, Ay, Cy))); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д