Равнобедренный треугольник - C# (216690)
Формулировка задачи:
Помогите решить задачу:
Пусть даны координаты трех точек на плоскости. Если они могут быть вершинами равнобедренного треугольника, вычислите длины его высот. Выведите длины основания и высот в порядке возрастания значений.
Решение задачи: «Равнобедренный треугольник»
textual
Листинг программы
Random rand = new Random(); Point p1 = new Point(rand.Next(0, 9), rand.Next(0, 9)); Point p2 = new Point(rand.Next(0, 9), rand.Next(0, 9)); Point p3 = new Point(rand.Next(0, 9), rand.Next(0, 9)); double w1 = System.Math.Sqrt((p1.X - p2.X) * (p1.X - p2.X) + (p1.Y - p2.Y) * (p1.Y - p2.Y)); double w2 = System.Math.Sqrt((p2.X - p3.X) * (p2.X - p3.X) + (p2.Y - p3.Y) * (p2.Y - p3.Y)); double w3 = System.Math.Sqrt((p3.X - p1.X) * (p3.X - p1.X) + (p3.Y - p1.Y) * (p3.Y - p1.Y)); if (w1 == w2 || w2 == w3 || w3 || w1) { Point p_2_3 = new Point((p2.X + p3.X) / 2, (p2.Y + p3.Y) / 2); double h_2_3 = System.Math.Sqrt((p1.X - p_2_3.X) * (p1.X - p_2_3.X) + (p1.Y - p_2_3.Y) * (p1.Y - p_2_3.Y)); Point p_1_2 = new Point((p1.X + p2.X) / 2, (p1.Y + p2.Y) / 2); double h_1_2 = System.Math.Sqrt((p_1_2.X - p3.X) * (p_1_2.X - p3.X) + (p_1_2.Y - p3.Y) * (p_1_2.Y - p3.Y)); Point p_1_3 = new Point((p1.X + p3.X) / 2, (p1.Y + p3.Y) / 2); double h_1_3 = System.Math.Sqrt((p_1_3.X - p2.X) * (p_1_3.X - p2.X) + (p_1_3.X - p2.X) * (p_1_3.X - p2.X)); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д