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

Треугольник и точка - C++

Восстановить пароль Регистрация
 
Lena _t
 Аватар для Lena _t
0 / 0 / 0
Регистрация: 25.04.2011
Сообщений: 32
20.05.2011, 17:31     Треугольник и точка #1
Задача
С клавиатуры вводится координаты вершин треугольника и координаты точки с .Определить лежит ли точка в треугольнике.И если можно поподробнее объяснить ,что делаем в той или иной строчки.))
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.05.2011, 17:31     Треугольник и точка
Посмотрите здесь:

C++ Треугольник и точка.
C++ Точка и Треугольник
C++ Треугольник задан вершинами (x1,y1), (x2,y2), (x3,y3). Принадлежит ли заданная точка (x,y) указанному треугольнику.
удалить из каждой группы идущих подряд цифр, которой не предшествует точка, все начальные нули (кроме последнего, если за ним идет точка) C++
Дана точка М(x, y). Присвоить z = 1, если точка принадлежит окружности с радиусом R и центром в точке (a, b) и z = 0 в противном случае. C++
C++ Даны отрезки [a, b] и [c, d] и точка A с координатой х. Определить, принадлежит ли данная точка одному из этих отрезков, обоим или лежит вне их
Наследование классов: реализовать классы точка, линия, треугольник, круг C++
Входит ли точка в треугольник? C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
20.05.2011, 17:34     Треугольник и точка #2
Lena _t, Точка в треугольнике
aned
2 / 1 / 0
Регистрация: 27.07.2013
Сообщений: 22
04.08.2013, 15:06     Треугольник и точка #3
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
// aned.
// ЗАДАНИЕ: даны координаты треугольника ABC и точки P
// определить находится ли точка внутри треугольника
// АЛГОРИТМ: 1.строим треугольники с вершиной P
// 2.находим длины всех отрезков
// 3.находим углы с вершиной P
// 4.сумма углов должна равняться 2ПИ  или 360 градусам
 
#include <iostream>
#include <math.h>
#include <iomanip>
 
using namespace std;
 
float X1,X2,X3,Y1,Y2,Y3; // координаты треугольника ABC
float X,Y; // координаты точки P
 
float AB,AC,BC; // длины отрезков треугольника ABC
float PA,PB,PC; // длины отрезков из точки P
 
float APB,APC,BPC; // углы у вершины P
 
int main()
{
    setlocale(0,"");
 
    cout<<"Введите X1 :";
    cin>>X1;
    cout<<"Введите Y1 :";
    cin>>Y1;
    cout<<"Введите X2 :";
    cin>>X2;
    cout<<"Введите Y2 :";
    cin>>Y2;
    cout<<"Введите X3 :";
    cin>>X3;    
    cout<<"Введите Y3 :";
    cin>>Y3;
    cout<<"Введите X :";
    cin>>X;
    cout<<"Введите Y:";
    cin>>Y;
 
    AB=sqrt(pow((X1-X2),2)+pow((Y1-Y2),2));
    AC=sqrt(pow((X1-X3),2)+pow((Y1-Y3),2));
    BC=sqrt(pow((X2-X3),2)+pow((Y2-Y3),2));
    // ----------------------------------------
    PA=sqrt(pow((X-X1),2)+pow((Y-Y1),2));
    PB=sqrt(pow((X-X2),2)+pow((Y-Y2),2));
    PC=sqrt(pow((X-X3),2)+pow((Y-Y3),2));
 
    cout<<endl<<AB<<endl<<AC<<endl<<BC<<endl;
    cout<<endl<<PA<<endl<<PB<<endl<<PC<<endl;
    // ----------------------------------------------
    APB=acos((pow(PB,2)+pow(PA,2)-pow(AB,2))/(2*PA*PB));
    APC=acos((pow(PC,2)+pow(PA,2)-pow(AC,2))/(2*PA*PC));
    BPC=acos((pow(PB,2)+pow(PC,2)-pow(BC,2))/(2*PC*PB));
 
    cout<<endl<<APB<<endl<<APC<<endl<<BPC<<endl;
    // ----------------------------------------
    double Summ=(APB+APC+BPC);// сумма углов у вершины P
    cout<<endl<<Summ<<endl;
 
    cout<<fixed;               // оставляем два знака после запятой
    cout<<setprecision(2);
    cout<<endl<<Summ<<endl;
    int Summ1=(Summ/2)*100; // приводим к int
 
    cout<<endl<<Summ1<<endl;
 
    // -----------------------------------
    switch(Summ1)
    {
        case 314:
 
            cout<<endl<<"YES!"<<endl;
        break;
 
        default :
            cout<<endl<<"NO!"<<endl;
    }
 
 
    cin.get();
    cin.get();
    return 0;
}
Yandex
Объявления
04.08.2013, 15:06     Треугольник и точка
Ответ Создать тему
Опции темы

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