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

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

Восстановить пароль Регистрация
 
MilitaNt
0 / 0 / 0
Регистрация: 15.06.2012
Сообщений: 21
21.06.2012, 11:36     Треугольник и точка #1
можете помочь? не могу понять почему на таком тесте неправильно работает данная программа...
тест:
2 1000000000
1000000000 2
2 2
4 4

код:
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
int x1, x2, x3, x0, y1, y2, y3, y0;
        fscanf(pFile1, "%d", &x1);
        fscanf(pFile1, "%d", &y1);
        fscanf(pFile1, "%d", &x2);
        fscanf(pFile1, "%d", &y2);
        fscanf(pFile1, "%d", &x3);
        fscanf(pFile1, "%d", &y3);
        fscanf(pFile1, "%d", &x0);
        fscanf(pFile1, "%d", &y0);
        int z1 = (x1 - x3) * (y2 - y3) - (x2 - x3) * (y1 - y3);
        if (z1 < 0)
            z1 = z1 * (-1);
        
        int z2 = (x2 - x0) * (y3 - y0) - (x3 - x0) * (y2 - y0);
        if (z2 < 0)
            z2 = z2 * (-1);
        
        int z3 = (x3 - x1) * (y0 - y1) - (x0 - x1) * (y3 - y1);
        if (z3 < 0)
            z3 = z3 * (-1);
        
        int z4 = (x0 - x2) * (y1 - y2) - (x1 - x2) * (y0 - y2);
        if (z4 < 0)
            z4 = z4 * (-1);
 
        double Sd = (z2 + z3 + z4) / 2; // S1 + S2 + S3
 
        if (Sd == z1 / 2)
        {
            fprintf(pFile2, "In");
        }
        else
        {
            fprintf(pFile2, "Out");
        }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.06.2012, 11:36     Треугольник и точка
Посмотрите здесь:

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++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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