Форум
» Назад на решение задач по физике и термеху
Регистрация | Профиль | Войти | Забытый пароль | Присутствующие | Справка | Поиск

» Добро пожаловать, Гость: Войти | Регистрация
    Форум
    Информационные технологии
        Решение задач на Pascal. Форум 2
Отметить все сообщения как прочитанные   [ Помощь ]
» Добро пожаловать на форум "Информационные технологии" «

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 ]
Модераторы: paradise, KMA
  

mity99


Новичок

На координатной плоскости даны три точки, узнать лежат ли они на одной прямой ?
Вроде не сложно но у меня не получилось так что помогите.

Всего сообщений: 12 | Присоединился: декабрь 2008 | Отправлено: 18 дек. 2008 18:43 | IP
mity99


Новичок

даны три точки A, B, C, если нет, то вычислить угол: а, в, с.  Это туда ^

Всего сообщений: 12 | Присоединился: декабрь 2008 | Отправлено: 18 дек. 2008 18:47 | IP
paradise


Долгожитель


Цитата: mity99 написал 18 дек. 2008 18:43
На координатной плоскости даны три точки, узнать лежат ли они на одной прямой ?
Вроде не сложно но у меня не получилось так что помогите.


а как вы делаете? Алгоритм, действительно, лёгкий, Вам нужно строить прямую по двум любым точкам, а потом проверять элементарное условие, "если координаты третьей точки удовлетворяют уравнению прямой, то все 3 точки лежат на одной прямой".

Цитата: mity99 написал 18 дек. 2008 18:47

даны три точки A, B, C, если нет, то вычислить угол: а, в, с.  Это туда ^


Опять же какие точки? На плоскости или в пространстве? Какой угол вычислить и что значит "туда ^"???

Всего сообщений: 428 | Присоединился: ноябрь 2008 | Отправлено: 20 дек. 2008 0:36 | IP
bekas


Долгожитель

Чтобы узнать, лежат ли три данные точки (на плоскости) на одной прямой, надо принять их за вершины треугольника и найти его площадь S. Если окажется S=0, то точки лежат на одной прямой. Для S существует такая формула:

S = 0.5 * [(x1y2+x2y3+x3y1) - (y1x2+y2x3+y3x1)],
где xi, yi - координаты соответствующих точек.

Иногда эта формула дает отрицательное значение, поэтому необходимо брать абсолютное значение. Естественно, для определения расположения трех точек на одной прямой умножение на 0.5 не надо выполнять...


-----
Из Северодонецка

Всего сообщений: 379 | Присоединился: январь 2006 | Отправлено: 20 дек. 2008 14:10 | IP
mity99


Новичок

Оба моих сообщения это одна задача, извеняюсь конечно что так получилось вот она вся:
Даны три точки А(x1;y1), B(x2;y2), C(x3;y3). Определить лежат ли они на одной прямой, если нет, то вычислить угол АВС.
А про треугольник - это сильно я бы ни зачто не догадался.

Всего сообщений: 12 | Присоединился: декабрь 2008 | Отправлено: 20 дек. 2008 20:27 | IP
mity99


Новичок

Извиняюсь : Даны три точки на координатной плоскости

Всего сообщений: 12 | Присоединился: декабрь 2008 | Отправлено: 20 дек. 2008 20:28 | IP
mity99


Новичок

про умножение на 0,5 я не совсем понял

Всего сообщений: 12 | Присоединился: декабрь 2008 | Отправлено: 20 дек. 2008 20:31 | IP
bekas


Долгожитель

Для анализа расположения точек на одной прямой достаточно вычислить [(x1y2+x2y3+x3y1) - (y1x2+y2x3+y3x1)] и проанализировать это выражение на 0. То есть нет необходимости вычислять
0.5 * [(x1y2+x2y3+x3y1) - (y1x2+y2x3+y3x1)]


(Сообщение отредактировал bekas 20 дек. 2008 22:15)

-----
Из Северодонецка

Всего сообщений: 379 | Присоединился: январь 2006 | Отправлено: 20 дек. 2008 22:14 | IP
bekas


Долгожитель

Для определения угла между прямыми необходимо вычислить их угловые коэффициенты:

m1 = (y2-y1)/(x2-x1)
m2 = (y2-y3)/(x2-x3)

Тогда угол можно получить по формулам:

tg(f) = (m2-m1)/(1+m1m2)
tg(f) = (m1-m2)/(1+m1m2)

в зависимости от того, какая прямая считается подвижной, а какая неподвижной. Иначе говоря, из углового коэффициента неподвижной прямой надо вычитать угловой коэффициент подвижной.

-----
Из Северодонецка

Всего сообщений: 379 | Присоединился: январь 2006 | Отправлено: 20 дек. 2008 22:34 | IP
Volonter



Новичок

Вот задачка  Даны целые числа a1, a2,... Известно что a10 и что среди a2, a3,... есть хотябы одно отрицательное число. Пусть a1, ..., an - члены данной последовательности, предшествующие первому отрицательному члену(n заранее неизвестно). Получить max(a1, a1a2,...a1a2...an);

-----
Этот мир настолько холоден и жесток, что даже носки в нем, по большей части, всегда одиноки...

Всего сообщений: 8 | Присоединился: ноябрь 2008 | Отправлено: 20 дек. 2008 23:04 | IP

Эта тема закрыта, новые ответы не принимаются

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 ]

Форум работает на скрипте © Ikonboard.com