Форум программистов, компьютерный форум CyberForum.ru

Взаимное расположение прямых - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.94
Лестат
12 / 11 / 1
Регистрация: 24.09.2009
Сообщений: 188
10.02.2010, 22:04     Взаимное расположение прямых #1
Люди.ПЛЗ помогите:
Даны вещественные числа A1, B1, C1, А, В, С. Выяснить взаимное расположение прямых A1*x+B1*y=C1 и A*x+B*y=C. Если прямые пересекаются, напечатать координаты точки пересечения.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.02.2010, 22:04     Взаимное расположение прямых
Посмотрите здесь:

Взаимное расположение линий C++
C++ Разработать алгоритм определяющий взаимное расположение двух прямых в пространстве помогите пожалуйста
C++ Разработать алгоритм определяющий взаимное расположение двух прямых в пространстве
C++ Определить взаимное расположение треугольников
C++ Определить взаимное расположение прямых
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Лестат
12 / 11 / 1
Регистрация: 24.09.2009
Сообщений: 188
17.02.2010, 16:31  [ТС]     Взаимное расположение прямых #2
Народ,плз,помогите,оч надо.

Люди, ну что, неужели никто не знает ? =((

Не могу понять как узнать что прямые пересекаются и как организовать это.. =(
Alip
53 / 32 / 3
Регистрация: 10.03.2010
Сообщений: 85
10.03.2010, 15:57     Взаимное расположение прямых #3
Лестат, если прямые пересекаются, то у них есть точка пересечения. Всё, что надо сделать - решить твою систему из двух уравнений с двумя неизвестными.
Лестат
12 / 11 / 1
Регистрация: 24.09.2009
Сообщений: 188
10.03.2010, 16:00  [ТС]     Взаимное расположение прямых #4
А как блин это написать на Си ?
=(
Black Fregat
 Аватар для Black Fregat
1353 / 983 / 215
Регистрация: 31.05.2009
Сообщений: 4,093
10.03.2010, 16:02     Взаимное расположение прямых #5
Цитата Сообщение от Лестат Посмотреть сообщение
Код
A1*x+B1*y=C1
A2*x+B2*y=C2
Дискриминант
D = A1*B2 - A2*B1;

Если D <> 0, прямые пересекаются, точка пересечения:
x = (С1*B2-C2*B1)/D;
y = (A1*C2-A2*C1)/D;

Если D = 0, прямые параллельны или совпадают.
При совпадении оба числителя формул для x и y тоже равны 0
Лестат
12 / 11 / 1
Регистрация: 24.09.2009
Сообщений: 188
10.03.2010, 16:05  [ТС]     Взаимное расположение прямых #6
Спасибо, кажись понял
Iworb
анимешник++
 Аватар для Iworb
93 / 60 / 2
Регистрация: 03.11.2009
Сообщений: 411
10.03.2010, 19:12     Взаимное расположение прямых #7
какое еще дискриминант в линейном уравнение???? Сейчас напишу вам все.
Лестат
12 / 11 / 1
Регистрация: 24.09.2009
Сообщений: 188
10.03.2010, 19:14  [ТС]     Взаимное расположение прямых #8
оо, спасибо
Iworb
анимешник++
 Аватар для Iworb
93 / 60 / 2
Регистрация: 03.11.2009
Сообщений: 411
10.03.2010, 19:22     Взаимное расположение прямых #9
B1*y=-A1*x+C1 - отсюда
y=(-A1*x+C1)/B1 и y=(-A*x+C)/B - 2 прямые
далее чисто математика
раскроем скобки
y=(-A1/B1)*x+C1/B1 и второе аналогично
-A1/B1 - это коэффициент при х, пусть он равен k
Если k1==k2 - то прямые параллельны
Если k1*k2==-1 - они перпендикулярны.

Если k1!=k2, то они пересекаются. Точка пересечения: х=(c*b1-b*c1)/(a*b1-b*a1)
y=(-a1/b1)*x+c1/b1 (тот х что нашли подставляем сюда)

Добавлено через 52 секунды
вот Вам математическая модель. Написать программу будет несложно, думаю с этим Вы справитесь.
Black Fregat
 Аватар для Black Fregat
1353 / 983 / 215
Регистрация: 31.05.2009
Сообщений: 4,093
11.03.2010, 09:38     Взаимное расположение прямых #10
Цитата Сообщение от Iworb Посмотреть сообщение
какое еще дискриминант в линейном уравнение????
Учите линейную алгебру, уважаемый. Там много есть интересных слов. Слова "Метод Краммера" когда-нибудь слышали?

Гы, пришел, обругал и написал дословно то же самое
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
11.03.2010, 10:31     Взаимное расположение прямых #11
Цитата Сообщение от Alip Посмотреть сообщение
Лестат, если прямые пересекаются, то у них есть точка пересечения. Всё, что надо сделать - решить твою систему из двух уравнений с двумя неизвестными.
В пространсве это не всё. Прямые в пространстве могут пересекаться, скрещиваться, или быть параллельными. Поэтому надо проверить прямые на параллельность (через коллинеарность векторов) и на пересечение (решением системы уравнений). Если двойной фоз, значит скрещиваются. Но если прямые на плоскости, то скрещивание исключается. Тогда достаточно найти точку пересечения.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.03.2010, 10:36     Взаимное расположение прямых
Еще ссылки по теме:

C++ Даны две прямые в пространстве.Определить их взаимное расположение
C++ C++ Выяснить взаимное расположение прямых на плоскости
Определить взаимное расположение точки и окружности C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Black Fregat
 Аватар для Black Fregat
1353 / 983 / 215
Регистрация: 31.05.2009
Сообщений: 4,093
11.03.2010, 10:36     Взаимное расположение прямых #12
Где там пространство?
Yandex
Объявления
11.03.2010, 10:36     Взаимное расположение прямых
Ответ Создать тему
Опции темы

Текущее время: 17:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru