![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 17.03.2011
Сообщений: 9
|
![]()
Задача состоит в том, чтобы написать программу, определяющую положение двух точек на плоскости, иначе говоря, их координаты.
Имеется система из трёх отрезков (т.н. кошачья нога), концы первого и третьего из которых совпадают с концами второго. Схематически (без учёта углов) можно представить это так: (A)------(B)------(C)------(D) (отрезки, соответственно, - AB, BC и CD). На вход программы поступает длина этих отрезков и координаты точек A и D. При этом известно, что угол ABC (т.е. образуемый отрезками AB и BC) соотносится с углом BCD как c (этот параметр также подаётся в программу). Необходимо найти точки B и C. Помогите, пожалуйста, составить эту программу. |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
![]()
Вообще-то, при таком условии, она однозначного решения не имеет. Необходим ещё один параметр. Например, угол BAD или ADC.
|
![]() |
![]() |
![]() |
#3 |
Регистрация: 17.03.2011
Сообщений: 9
|
![]()
Верно. Решение не однозначно. Оно двузначно. То есть получится по два варианта точек B и C, а суть в том, что первый вариант точки будет симметричен второму относительно прямой AD. В частном случае, когда ломаная ABCD вытягивается в отрезок, эти варианты совпадают.
Последний раз редактировалось Русский человек; 17.03.2011 в 14:57. |
![]() |
![]() |
![]() |
#4 |
Регистрация: 17.03.2011
Сообщений: 9
|
![]()
Это весьма очевидно. Если бы давались какие-то углы, задача была бы намного проще.
|
![]() |
![]() |
![]() |
#5 |
Made In USSR!
Старожил
Регистрация: 01.09.2010
Сообщений: 3,657
|
![]()
Язык? Бюджет? Сроки?
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой" |
![]() |
![]() |
![]() |
#6 |
Регистрация: 17.03.2011
Сообщений: 9
|
![]()
Язык - Глагол, на крайняк Рапира.
Сроки - чем быстрее, тем лучше. Желательно в течение дня. Бюджет - сколько хотите за такую работу? |
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
![]()
Человека, умеющего решать обратную кинематическую задачу, и до сих пор программирующего на Рапире... Ну, это долго придётся искать!.. :D
|
![]() |
![]() |
![]() |
#8 |
Регистрация: 17.03.2011
Сообщений: 9
|
![]()
Я тоже так думаю =) Поэтому и предлагаю, кому интересны всякие головоломки, поучаствовать в размышлениях. Может, что-нибудь и придумаем.
|
![]() |
![]() |
![]() |
#9 |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
![]()
Ну, тупое численное решение, путём нахождения минимума ф-ии двух переменных, подойдёт? Только НЕ на Рапиде, естественно.
Последний раз редактировалось Vago; 17.03.2011 в 16:50. |
![]() |
![]() |
![]() |
#10 |
Регистрация: 17.03.2011
Сообщений: 9
|
![]()
Конечно, осталось только вывести эти функции.
Вообще, по условию задачи, мы имеем систему из 4-х уравнений: ( x(A) - x(B) ) ^ 2 + ( y(A) - y(B) ) ^ 2 = |AB| ^ 2 ; ( x(D) - x(С) ) ^ 2 + ( y(D) - y(С) ) ^ 2 = |CD| ^ 2 ; ( x(B) - x(С) ) ^ 2 + ( y(B) - y(С) ) ^ 2 = |BC| ^ 2 ; ABC = c * BCD . Тут x(T) - координата x точки T; y(T) - соответственно, y; |OT| - расстояние между точками O и T (длина отрезка OT); ABC и BCD - углы; c - задаваемая постоянная. Задачу можно сформулировать по-другому: у четырёхугольника известны две противолежащие вершины, длины двух противолежащих сторон и обеих диагоналей, а также соотношение двух противолежащих углов. Найти оставшиеся две вершины. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Задача минимизации дисбаланса на линии сборки (задача минимакса) | LenZab | Microsoft Office Excel | 13 | 13.03.2011 22:51 |
Задача | Anna T | Паскаль, Turbo Pascal, PascalABC.NET | 4 | 13.12.2010 18:47 |
Задача 1 | UnLimited | Помощь студентам | 1 | 13.10.2010 19:26 |
Задача | darter96 | Помощь студентам | 2 | 24.06.2009 15:34 |