![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 18.03.2012
Сообщений: 8
|
![]()
Помогите написать код программы заранее спасибо
Найти расстояние между произвольно заданными на плоскости отрезком AB и прямой, проходящей через точки С и D |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 26.11.2009
Сообщений: 87
|
![]()
Смею предположить, что тут возможны следующие варианты:
1) Прямая и отрезок пересекаются 2) Прямая и отрезок параллельны 3) Прямая и отрезок не пересекаются и не параллельны В первом случае расстояние равно нулю, во втором расстояние между П и О равно длине перпендикуляра от любой точки отрезка до прямой, в третьем - длине перпендикуляра, опущенного из конца отрезка, ближайшего к прямой, на эту прямую. В чем собственно проблема-то?
Помог - жми весы
![]() |
![]() |
![]() |
![]() |
#3 |
Регистрация: 18.03.2012
Сообщений: 8
|
![]()
есть четвертый когда отрезок лежит на прямой
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 26.11.2009
Сообщений: 87
|
![]()
Да, но я относил его к варианту 1), потому как принципиально с точки зрения расстояния это одно и тоже. Перефразируем тогда так: есть хотя бы одна общая точка.
Помог - жми весы
![]() |
![]() |
![]() |
![]() |
#5 |
Регистрация: 18.03.2012
Сообщений: 8
|
![]()
а как будет выглядеть код программы отыскания этого расстояния?
Общее уравнение прямой линии: A*x + B*y + C = 0 Общее уравнение прямой линии с угловым коэффициентом: y = a*x + b Уравнение прямой, проходящей через две точки A1(x1, y1) и A2(x2, y2): (y2 - y1)*(x – x1) = (x2 - x1)*(y – y1) Условием параллельности прямых линий, заданных уравнениями y= a1*x + b1 y= a2*x + b2 служит равенство угловых коэффициентов a1 = a2 Условием перпендикулярности прямых линий, заданных уравнениями y= a1*x + b1 y= a2*x + b2 служит соотношение a1*a2 = -1 Для разыскания точки пересечения прямых линий, заданных уравнениями A1*x + B1*y + C1 = 0 A2*x + B2*y + C2 = 0 необходимо решить указанную систему уравнений. Расстояние d от точки M1(x1, y1) до прямой линии A*x + B*y + C = 0: d = abs((A*x1 + B*y1 +C)/sqrt(A2 + B2)), где abs(z) – модуль числа z, sqrt(v) – корень квадратный числа v Уравнение прямой, проходящей через точку А1(x1, y1) перпендикулярно прямой A*x + B*y + C = 0: A*(y – y1) + B*(x – x1) = 0 |
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 26.11.2009
Сообщений: 87
|
![]()
Я могу помочь тебе разобраться с ошибками, может подсказать подход, но решать задачу за тебя я не стану. С такой формулировкой вопроса тебе во фриланс. Пишите коды, посмотрим, оценим, поможем.
Помог - жми весы
![]() |
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 14.09.2011
Сообщений: 93
|
![]()
................................... ...
Последний раз редактировалось sidestep; 18.03.2012 в 14:57. |
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 14.09.2011
Сообщений: 93
|
![]()
а как ты узнаешь, от какой точки отрезка надо искать расстояние до прямой?
Задача к этому и сводится, если узнаешь точку, ближайшую к прямой, то перпендикуляр построить и вычислить его расстояние не тяжело |
![]() |
![]() |
![]() |
#9 |
Регистрация: 18.03.2012
Сообщений: 8
|
![]()
вопрос конечно интересный...
|
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 14.09.2011
Сообщений: 93
|
![]()
так тебе точное расстояние надо вычислить?
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
СИ Найти наименьшее расстояние между точками | savra | Помощь студентам | 2 | 19.04.2011 10:16 |
Найти номера пары точек, расстояние между которыми наибольшее | evgenext | Помощь студентам | 1 | 02.07.2010 22:46 |
Паскаль*Найти расстояние между двумя заданными множе-ствами точек | tipson | Помощь студентам | 2 | 11.07.2009 12:19 |
Найти номера пары точек, расстояние между которыми наибольшее | Nevis | Помощь студентам | 5 | 21.06.2009 23:37 |
Как узнать расстояние между делениями у Тракбара? | Кирилл13 | Помощь студентам | 1 | 11.11.2008 11:44 |