Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на языке Pascal


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Pascal

Выпуск № 568
от 09.02.2008, 00:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 249, Экспертов: 47
В номере:Вопросов: 1, Ответов: 1

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>


Вопрос № 121386: Здравствуйте, уважаемые эксперты!!! Помогите пожалуйста решить задачу, я делаю курсовую и меня поставило в тупик вот что: есть 4 точки (x1;y1), (x2;y2), (x3;y3), (x4;y4). Нужно найти меньший из углов между прямыми, проходящими через точки ...

Вопрос № 121.386
Здравствуйте, уважаемые эксперты!!!
Помогите пожалуйста решить задачу, я делаю курсовую и меня поставило в тупик вот что: есть 4 точки (x1;y1), (x2;y2), (x3;y3), (x4;y4).
Нужно найти меньший из углов между прямыми, проходящими через точки (x1;y1), (x2;y2) и (x3;y3), (x4;y4) в градусах. Сделать это нужно как можно проще!(я про код)
Буду благодарен любой помощи!
Заранее спасибо.
Отправлен: 03.02.2008, 02:46
Вопрос задал: Волк Василий Григорьевич (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Verena
Здравствуйте, Волк Василий Григорьевич!
Для решения такой задачи проще всего найти прямые в виде y = kx+b, где k, как известно, будет нам давать тангенс угла между прямой и осью ОХ. Найти нам, по сути, нужно только коэффициенты k, что легко можно сделать из системы:
y1 = k1*x1+b1 -> b1 = y1-k1*x1
y2 = k1*x2+b1 -> y2 = k1*x2+y1-k1*x1 -> k1 = (y2-y1)/(x2-x1)
Аналогично для второй прямой.
Тогда, вычислив коэффициенты k1 и k2 (для первой и второй прямой соответственно) мы сможем вычислить угол между ними по формуле
arctg ((k2-k1)/(1+k1*k2))
Только следует рассмотреть крайние случаи: когда прямые перпендикулярны (в этом случае выражение в знаменателе арктангенса (1+k1*k2) будет равно 0) и когда одна из прямых соответствует формуле x = const (в этом случае x2=x1 и угол можно вычислить как 90-arctg(k), где k - коэффициент невырожденной прямой, почему так - легко можно увидеть на графике). Примерную реализацию этого алгоритма смотрите в приложении.
Удачи!

Приложение:

---------
Эта история - не для истории, понимаешь?

Ответ отправила: Verena (статус: Студент)
Ответ отправлен: 03.02.2008, 04:33
Оценка за ответ: 5
Комментарий оценки:
Большое спасибо!


Вы имеете возможность оценить этот выпуск рассылки.
Нам очень важно Ваше мнение!
Оценить этот выпуск рассылки >>

Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2008, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.70 от 17.01.2008
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное