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

Написать функцию булевского типа, проверяющую попадание точки с заданными координатами в треугольник с вершинами в точках (2,1) (3,0) (-1,0) - C++

Восстановить пароль Регистрация
 
Antik
0 / 0 / 0
Регистрация: 26.06.2012
Сообщений: 20
26.06.2012, 23:32     Написать функцию булевского типа, проверяющую попадание точки с заданными координатами в треугольник с вершинами в точках (2,1) (3,0) (-1,0) #1
ребят нужна помощь

Задачи по программированию.
Задача решается на двух языках.


Задача 3.
Написать функцию булевского типа, проверяющую попадание точки с заданными координатами в треугольник с вершинами в точках (2,1) (3,0) (-1,0)

очень нужно к восьми утра!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.06.2012, 23:32     Написать функцию булевского типа, проверяющую попадание точки с заданными координатами в треугольник с вершинами в точках (2,1) (3,0) (-1,0)
Посмотрите здесь:

Написать функцию булевского типа, переставляющую местами диагонали квадратной матрицы, соседние с главной. C++
Написать функцию булевского типа, определяющую упорядоченность массива целых чисел. C++
Написать функцию булевского типа, определяющую наличие пересечения заданной прямой и заданного отрезка. C++
C++ Написать функцию булевского типа, проверяющую наличие в файле записи с заданным ключём.
C++ Написать функцию булевского типа, проверяющую попадание точки с заданными координатами в треугольник с вершинами в точках (1,1) (0,2) (-1,0)
C++ Функция, проверяющая попадание точки с заданными координатами в фигуру
Найти треугольник с наибольшей площадью с вершинами в точках заданных координатами (подправить код) C++
Найти треугольник наибольшей площади с вершинами в заданных точках C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asidorchenko
379 / 205 / 25
Регистрация: 09.04.2012
Сообщений: 635
29.06.2012, 14:07     Написать функцию булевского типа, проверяющую попадание точки с заданными координатами в треугольник с вершинами в точках (2,1) (3,0) (-1,0) #2
C++
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
#include <stdio.h>
 
bool f(float x1,float y1,float x2,float y2,float x3,float y3,float x4,float y4)
{
float a1,b1,c1, a2,b2,c2, a3,b3,c3;
float r1,r2,r3;
// 1.x1,y1, x2,y2
a1 = y2 - y1;
b1 = x1 - x2;
c1 = x2*y1 - x1*y2;
 
r1 = a1*x3 + b1*y3 + c1;
r2 = a1*x4 + b1*y4 + c1;
r3 = r1*r2;
 
if (r3 < 0)
return false;
 
// 2.x2,y2, x3,y3
a2 = y3 - y2;
b2 = x2 - x3;
c2 = x3*y2 - x2*y3;
 
r1 = a2*x1 + b2*y1 + c2;
r2 = a2*x4 + b2*y4 + c2;
r3 = r1*r2;
 
if (r3 < 0)
return false;
 
 
// 3.x1,y1, x3,y3
 
a3 = y3 - y1;
b3 = x1 - x3;
c3 = x3*y1 - x1*y3;
 
r1 = a3*x2 + b3*y2 + c3;
r2 = a3*x4 + b3*y4 + c3;
r3 = r1*r2;
 
if (r3 < 0)
return false;
else
return true;
 
}
 
int main()
{
int r;
float x1,y1,x2,y2,x3,y3; // точки треугольника
float x4,y4; // проверяемая точка
 
x1 = 2.0;
y1 = 1.0;
 
x2 = 3.0;
y2 = 0.0;
 
x3 = -1.0;
y3 = 0.0;
 
x4 = 0.9;
y4 = 0.5;
 
r = f(x1,y1,x2,y2,x3,y3,x4,y4);
 
printf("%d\n", r);
 
return 0;
}
Yandex
Объявления
29.06.2012, 14:07     Написать функцию булевского типа, проверяющую попадание точки с заданными координатами в треугольник с вершинами в точках (2,1) (3,0) (-1,0)
Ответ Создать тему
Опции темы

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