Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.10.2011, 08:26   #1
tommorello
Новичок
Джуниор
 
Регистрация: 10.10.2011
Сообщений: 1
По умолчанию Условный оператор в Delphi

Здравствуйте!Я совсем не понимаю эти задачкипомогите пожалуйста!
Задача:
"Даны три пары вещественных чисел (x1,y1) , (x2,y2) , (x3,y3) являющиеся координатными вершинами треугольника.Определить ,является ли треугольник прямоугольным."
Заранее спасибо
tommorello вне форума Ответить с цитированием
Старый 10.10.2011, 08:45   #2
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Тут дело не в программировании, а в самой задаче. То есть Вы не видите алгоритма решения. Ну есть два варианта найти прямой угол, либо попробовать формулу Пифагора. Для этого нужно определить стороны треугольника. А для этого есть формула нахождения расстояния между двумя точками. См. в Википедии либо в учебниках по геометрии.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 10.10.2011, 08:48   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

про теорему пифагора слышали?
в этой задаче она аж целых два раза "пригодится": для определения расстояния между точками (нахождение длин сторон треугольника) и для проверки, является ли треугольник прямоугольным (напоминаю, что в прямоугольном треугольнике квадрат гипотенузы равен сумме квадратов катетов!

1) найдите длины сторон (корень квадратный из суммы квадратов разностей координат
например:
Код:
SideA := sqrt( sqr(x1-x2) + sqr(y1-y2)); // длина стороны от точки 1 до точки 2
2) из полученных трёх чисел найдите самую большую величину (самую длиную сторону).
3) if СамаяБольшаяСторона ^ 2 (в квадрате) = ДругаяСторона^2 + ТретьяСторона^2 then // Треугольник прямоугольный
else // НЕТ!

вот и всё.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 10.10.2011, 09:57   #4
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Вот здесь http://www.testent.ru/publ/predmetny...mi/35-1-0-1066 написано как находить угол между двумя прямыми (это если без треугольника). Если непонятно, нарисуйте и посмотрите сами.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Линейные Алгоритмы, Условный оператор (Delphi 7) Olesya2406 Помощь студентам 1 30.04.2009 10:31
Delphi 7. Условный оператор Юрий2009 Помощь студентам 9 29.04.2009 19:36
Delphi 7. Условный оператор Юрий2009 Помощь студентам 2 27.04.2009 20:10
Delphi 7. Условный оператор Юрий2009 Помощь студентам 1 27.04.2009 19:16
Условный оператор,решите пожалуйста задачу на Delphi 7 matrix8325 Помощь студентам 2 21.04.2009 22:45