| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Задача на C++ |
| Автор: Алехандро 11.8.2011, 14:19 |
| Надо составить программу, которая: А) запрашивает координаты четырехугольника (в том числе отрицательные и дробные); Б) с помощью геометрических формул проверяет, не является ли данная фигура прямоугольником; В) выводит результат Я не прошу вас решить эту задачу подскажите какие геометрические формулы нужно здесь использовать |
| Автор: xvr 12.8.2011, 12:21 | ||
|
| Автор: ZVano 12.8.2011, 14:54 |
Действительно. Тут достаточно по теореме Пифагора найти длинну диагоналей. Если диагонали равны, значит квадрат. |
| Автор: borisbn 12.8.2011, 15:45 | ||
ТС-у не нужен квадрат, а нужен прямоугольник. для этого достаточно только не обязательно 4... достаточно 3-х формула для угла между двумя отрезками заданными тремя точками (x1, y1, x2, y2, x3, y3)
alfa = arccos( ( a1 * b1 + a2 * b2 ) / ( sqrt( a1 * a1 + a2 * a2 ) * sqrt( b1 * b1 + b2 * b2 ) ) ); где a1 = x1 - x2 a2 = y1 - y2 b1 = x3 - x2 b2 = y3 - y2 |
| Автор: ZVano 15.8.2011, 09:24 |
У прямоугольника диагонали тоже равны |
| Автор: volatile 15.8.2011, 09:57 |
| ZVano, не нужно спорить с borisbn, вы ошибаетесь. Если диагонали равны, значит ... ничего не значит! Доказательство. Берем 2 одинаковых отрезка (это будут наши диагонали). Располагаем их произвольно, (крутим, перемещаем), единственное условие чтобы они пересекались. Соединяем концы отрезков по периметру. Получаем четырехугольник, с одинаковыми диагоналями, который вовсе не квадрат, не прямоугольник, и даже не ромб. |
| Автор: borisbn 15.8.2011, 10:23 |
| Похоже ТС о нас забыл |