Планиметрия,геометрические построения - C#
Формулировка задачи:
Постройте прямоугольный треугольник ABC, так, чтобы вершина А находилась в начале координат, по гипотенузе AB, которую надо расположить вдоль оси Ox, и
отрезку RK, равному разности катетов BC – AC, так, чтобы весь треугольник был расположен в I-ом квадранте
Спецификации ввода (файл Inlet.in)
XA YA
XB YB
XR YR
XK YK
Спецификации вывода (файл Outlet.out)
XA′ YA′
XB′ YB′
XC′ YC′
Решение задачи: «Планиметрия,геометрические построения»
textual
Листинг программы
static void Main(string[] args)
{
var A = new Point(1, 1);
var B = new Point(A.X + 5.830951895, A.Y);
var R = new Point(0, 0);
var K = new Point(-2, 0);
var ab = Point.Magnitude( A, B );
var rc = Point.Magnitude( K, R );
var ac = CalcQuadraticEquationRoot(1, rc, (rc.Sqr()-ab.Sqr())/2);
var bc = rc + ac;
var resultPoints = GetResultPoints(ab, ac, bc);
var _ac = resultPoints[2];
var _bc = resultPoints[2] - resultPoints[1];
var _ab = resultPoints[1] - resultPoints[0];
Console.WriteLine(_ac.Magnitude());
Console.WriteLine(_bc.Magnitude());
Console.WriteLine(_ab.Magnitude());
Console.ReadKey();
}