С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
Заблокирован

Определить какая из точек лежит внутри а какая - снаружи треугольника

08.06.2016, 15:19. Показов 2434. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пытаюсь разобраться помогите пожалуйста .Створиты класс Triangle и класс Point. Объявить массив из n объектов класса Point, написать функцию, которая определяет, какая из точек лежит внутри, а какая - снаружи треугольника. Реализовать ввод данных средствами ГИК.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.06.2016, 15:19
Ответы с готовыми решениями:

Определить какая из точек лежит на окружности, какая внутри окружности, а какая вне окружности
Не могу не как понять какую формулу писать Вот задания Заданы координаты двух точек А(х,у) и В(х,у) и радиус окружности r. Определить...

Определить какая из точек ближе всего лежит к началу координаты
Заданы 3 точки р1(х1,у1),р2(х2,у2),р3(х3,у3).Определить какая из точек ближе всего лежит к началу координаты.

Определить какая из точек ближе всего лежит к началу координат
Помогите решить задачи. 1)Заданы 3 точки р1(х1,у1),р2(х2,у2),р3(х3,у3).Определить какая из точек ближе всего лежит к началу...

2
 Аватар для HOBATOP
323 / 310 / 206
Регистрация: 14.09.2015
Сообщений: 827
08.06.2016, 21:57
Лучший ответ Сообщение было отмечено manka02 как решение

Решение

manka02, смотрите: мы делаем одно допущение, а именно - границы треугольника являются частью треугольника. Исходя из этого получается вот такое решение:
Кликните здесь для просмотра всего текста
Java
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
class Dot {
    double x;
    double y;
 
    Dot(double x, double y) {
        this.x = x;
        this.y = y;
    }
 
    public String toString() {
        return String.format("X = %7.4f; Y = %7.4f", x, y);
    }
}
 
class Triangle {
    Dot a;
    Dot b;
    Dot c;
 
    Triangle(Dot a, Dot b, Dot c) {
        this.a = a;
        this.b = b;
        this.c = c;
    }
 
    public static boolean getOwn(Triangle tri, Dot dot) {
        double one, two, three;
        one = (tri.a.x - dot.x) * (tri.b.y - tri.a.y) - (tri.b.x - tri.a.x) * (tri.a.y - dot.y);
        two = (tri.b.x - dot.x) * (tri.c.y - tri.b.y) - (tri.c.x - tri.b.x) * (tri.b.y - dot.y);
        three = (tri.c.x - dot.x) * (tri.a.y - tri.c.y) - (tri.a.x - tri.c.x) * (tri.c.y - dot.y);
        if (one >= 0 & two >= 0 & three >= 0 || one <= 0 & two <= 0 & three <= 0) {
            return false;
        } else {
            return true;
        }
    }
 
    public static void main(String[] args) {
        Triangle triangle = new Triangle(new Dot(2.5, 2.5), new Dot(2.5, 12), new Dot(6, 8.5));
        int n = 15;
        Dot[] dots = new Dot[n];
        System.out.println("Вершины треугольника:\nА = " + triangle.a + "\nB = " + triangle.b + "\nC = " + triangle.c);
        for (int i = 0; i < dots.length; i++) {
            dots[i] = new Dot(Math.random() * 10, Math.random() * 10);
            if (getOwn(triangle, dots[i])) {
                System.out.printf("Точка № %2d %s лежит вне треугольника %n", (i + 1), dots[i]);
            } else {
                System.out.printf("Точка № %2d %s лежит внутри треугольника %n", (i + 1), dots[i]);
            }
        }
    }
}
да, чуть не забыл. При заданных параметрах можно ожидать вот такого примерно экрана:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Вершины треугольника:
А = X =  2,5000; Y =  2,5000
B = X =  2,5000; Y = 12,0000
C = X =  6,0000; Y =  8,5000
Точка №  1 X =  7,1898; Y =  4,1704 лежит вне треугольника 
Точка №  2 X =  2,5065; Y =  7,6964 лежит внутри треугольника 
Точка №  3 X =  1,5876; Y =  6,0145 лежит вне треугольника 
Точка №  4 X =  9,5539; Y =  9,7053 лежит вне треугольника 
Точка №  5 X =  7,1868; Y =  0,4542 лежит вне треугольника 
Точка №  6 X =  8,6109; Y =  2,5149 лежит вне треугольника 
Точка №  7 X =  4,3994; Y =  3,7182 лежит вне треугольника 
Точка №  8 X =  7,2371; Y =  8,0933 лежит вне треугольника 
Точка №  9 X =  9,9641; Y =  1,2903 лежит вне треугольника 
Точка № 10 X =  3,4714; Y =  8,1380 лежит внутри треугольника 
Точка № 11 X =  8,1793; Y =  6,3230 лежит вне треугольника 
Точка № 12 X =  7,1145; Y =  5,8321 лежит вне треугольника 
Точка № 13 X =  8,6253; Y =  4,4898 лежит вне треугольника 
Точка № 14 X =  1,0201; Y =  1,7185 лежит вне треугольника 
Точка № 15 X =  1,6455; Y =  6,1380 лежит вне треугольника

Что такое "ГИК" (знаю только элемент парусного вооружения и пробитого на всю голову фана какого-нибудь) я не в курсе и, полагаю, что с этой частью сможете справиться самостоятельно. Ok? Тем более, что основную часть работы за Вас уже сделали.
Удачи!
0
0 / 0 / 0
Регистрация: 06.06.2016
Сообщений: 4
09.06.2016, 16:26
с графическим интерфейсом пользователя
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.06.2016, 16:26
Помогаю со студенческими работами здесь

Определить какая из точек, к какой из вершин квадрата лежит ближе всего
Заданы координаты вершин квадрата и координаты N точек. Определить какая из точек, к какой вершине квадрата лежит ближе всего.

какая из этих точек лежит между двумя другими.
Всем доброго времени суток) Прошу кому не трудно я в паскале нуб потому прошу прошу помогите решить задачи только вот главная заковырка в...

Для введенного целого трехзначного числа определить, какая цифра в числе является первой, какая второй и какая третьей
Разработать программу, которая для введенного целого трехзначного числа определяет, какая цифра в числе является первой, какая – второй и...

Определить, какая из двух точек находится ближе к оси OX, и какая к оси OY
Написать программу, которая определяет – какая из двух точек, заданных на плоскости своими координатами, находиться ближе к оси OX, и какая...

Даны координаты 3 точек A, B, C, определить, какая из точек ближе к А
Даны координаты 3 точек A, B, C, определить, какая из точек ближе к А.


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru