1 / 1 / 0
Регистрация: 01.11.2016
Сообщений: 4
|
|||||||||||
1 | |||||||||||
Выбрать три разные точки заданного на плоскости множества точек, составляющие треугольник наибольшего периметра05.11.2017, 15:53. Показов 9514. Ответов 3
Метки нет (Все метки)
Задача: Выбрать три разные точки заданного на плоскости множества точек, составляющие треугольник наибольшего периметра.
Суть задачи: Пусть вершины A(xA; yA; zA), B(xB; yB; zB), C(xC; yC; zC). Тогда периметр треугольника найдется как сумма длин сторон ВА, BC, CA: P = |ВА| + |BC| + |CA| =корень((xA – xB)^2 + (yA – yB)^2 + (zA – zB)^2) + + корень( (xC – xB)^2 + (yC – yB)^2 + (zC – zB)^2 ) + + корень( (xA – xC)^2 + (yA – yC)^2 + (zA – zC)^2 ); Решение можно найти полным перебором всех возможных комбинаций A, B, C. Проблема в коде на Java: Периметр всегда получается 0, из вложенного цикла он берёт последнюю точку и вычитает её саму из себя, когда ищет длину отрезка Он правильно пишет в массив, но неправильно читает из массива Если в любом месте программы написать gets(0) и gets(1), то он выведет одинаковые элементы Помогите, пожалуйста, добрые люди)
1
|
05.11.2017, 15:53 | |
Ответы с готовыми решениями:
3
Выбрать три разные точки заданного на плоскости множества точек, составляющие треугольник наибольшего периметра Выбрать три разные точки заданного на плоскости множества точек, составляющие треугольник наибольшего периметра Выбрать 3 разные точки заданного на плоскости множества точек,составляющие треугольник наибольшего периметра Из заданного на плоскости множества точек выбрать три точки, составляющие треугольник наибольшего периметра |
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
|
|
06.11.2017, 19:34 | 2 |
Могу помочь, если помощь ещё нужна
0
|
1 / 1 / 0
Регистрация: 01.11.2016
Сообщений: 4
|
|
06.11.2017, 20:03 [ТС] | 3 |
Да, еще нужна)
0
|
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
|
||||||
07.11.2017, 01:01 | 4 | |||||
Если будешь раскомментировать строчку для вывода всех треугольников, то есть недочёт, а именно: из строчки 24 эту строку: //System.out.println(temp); раскомментируй, если хочешь видеть информацию о всех треугольниках перенеси между строками 22 23 должно быть: ... Triangle temp = new Triangle(array[i], array[j], array[k]); double perimeter = temp.getPerimeter(); System.out.println(temp); if (maxPerimeter < perimeter) { ...
1
|