python — Как определить площадь треугольника по его координатам?
Задача состоит в следующем: вводится 6 чисел – координаты трёх вершин треугольника. Необходимо найти его площадь. В тестирующей системе этот код не проходит 1 тест. В чем косяк не знаю. Python 3.3
Входные данные:
Шесть чисел – координаты трёх вершин треугольника.
Выходные данные:
Одно число – величина площади треугольника.
Примеры
входные данные:
1 1 2 4 3 2
выходные данные:
2.50000
Насчет точности вычислений и округления в условии ничего не сказано, пробовал по-разному, не помогло.
import math x1, y1, x2, y2, x3, y3 = list(map(int, input().split())) a = math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2) b = math.sqrt((x3 - x1) ** 2 + (y3 - y1) ** 2) c = math.sqrt((x2 - x3) ** 2 + (y2 - y3) ** 2) p = (a + b + c) / 2 res = math.sqrt(p * (p - a) * (p - b) * (p - c)) print(res)
- python
- python-3.x
- геометрия
13
Попробуйте воспользоваться другой формулой:
x1, y1, x2, y2, x3, y3 = map(int, input(). split()) A = abs( x1*(y2 - y3) + x2*(y3 - y1) + x3*(y1 - y2) ) / 2.0 print(A)
Тест:
In [22]: x1, y1, x2, y2, x3, y3 = list(map(int, input().split())) 1 1 2 4 3 2 In [23]: A = abs( x1*(y2 - y3) + x2*(y3 - y1) + x3*(y1 - y2) ) / 2.0 In [24]: print(A) 2.5
PS в этом ответе есть и другие формулы нахождения площади треугольника при заданных координатах вершин (спасибо @jfs)
9
Если у вас есть два вектора V1(x1, y1) и V2(x2, y2), то величина
Sпараллелограм = x1 * y2 — x2 * y1
даст вам знаковую площадь параллелограмма, построенного на этих векторах. (Знак этой величины будет определять направление «заметания» плоскости от вектора V1 к вектору V2 — по часовой или против часовой стрелки.) А если разделить эту площадь на 2, то, очевидно, получится знаковая площадь треугольника, образованного этими векторами.
Таким образом, если в вашем случае имеются координаты вершин A(xa, ya), B(xb, yb) и C(xc, yc), вы можете выбрать AB за V1 и AC за V2 и получить
Sтреугольник = | (xb — xa) * (yc — ya) — (xc — xa) * (yb — ya) | / 2
Выбор сторон для векторов в данном случае произволен и результат от него не зависит.
На ваших входных данных:
Sтреугольник = | (2 — 1) * (2 — 1) — (3 — 1) * (4 — 1) | / 2 = 5 / 2 = 2.5
Несложно видеть, что эта формула также является частным случаем общей формулы Гаусса (ака «формула шнуровки») для площади произвольного многоугольника. Точнее, скорее вывод формулы Гаусса опирается на эту формулу знаковой площади «элементарного» треугольника.
Зарегистрируйтесь или войдите
Регистрация через Facebook
Регистрация через почту
Отправить без регистрации
Почта
Необходима, но никому не показывается
Отправить без регистрации
Почта
Необходима, но никому не показывается
Нажимая на кнопку «Отправить ответ», вы соглашаетесь с нашими пользовательским соглашением, политикой конфиденциальности и политикой о куки
Ответы | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||
|
|
|
Посмотреть всех экспертов из раздела Учеба и наука > Математика
Похожие вопросы |
Решено
Вершины пирамиды находятся в точках A,B,C,D.
Решено
Дан куб ABCDA1B1C1D1 Найдите угол между прямыми AD1 и BM, где М-середина ребра DD1
Решено
#1. Площадку освещает один фонарь на столбе, имеющем высоту 3 метра. Петя измеряет рост друзей и длину их теней, ребята стоят на месте и по площадке не
Решено
Витя вышел из дома со скоростью 3 км/ч. Он рассчитал, что доберется до дома Тани ровно к назначенному времени встречи. Но по пути он встретил своего
Боря купил 4 книги. Все книги без первой стоят 42 р., без второй — 40 р., без третьей — 38 р., без четвёртой — 36 р. Сколько стоит каждая книга?
Пользуйтесь нашим приложением
Видео-вопрос: Нахождение площади равнобедренного треугольника по координатам его вершин
Учитывая, что 𝐴𝐵𝐶 равнобедренный треугольник, где координаты точек 𝐴, 𝐵 и 𝐶 равны (8, −2), (−2, −2) и (0, −8), найдите площадь △ 𝐴𝐵𝐶.
Стенограмма видео
Учитывая, что 𝐴𝐵𝐶 равнобедренный треугольник, где координаты точек 𝐴, 𝐵 и 𝐶 равны восьми, отрицательные два; минус два, минус два; и ноль, минус восемь. Найдите площадь треугольника 𝐴𝐵𝐶.
Чтобы помочь нам понять, что Продолжая этот вопрос, я нарисовал эскиз. Итак, у меня есть баллы 𝐴, 𝐵 и 𝐶. И я присоединился к ним, чтобы сделать треугольник. И я также показал, что треугольник равнобедренный треугольник. И поэтому я отметил это. И мы можем видеть это, потому что, как нам говорят, что это равнобедренный треугольник, и мы ясно видим, что линия 𝐵𝐶 короче двух других, то две другие линии должны быть одинаковыми, потому что, как мы знаем, что это равнобедренный треугольник.
Итак, теперь, чтобы решить проблему, что мы собираемся сделать, это вычислить площадь треугольника. И для этого у нас есть формула. И эта формула утверждает, что площадь треугольника равна половине произведения основания на высоту, где высота равна перпендикулярная высота. И что мы подразумеваем под перпендикуляром Высота – это высота под прямым углом к основанию.
Итак, первое, что нам нужно сделать, это площадь треугольника равна длине основания, поэтому 𝐵. 𝐵 будет равно восьми, потому что это 𝑥-координата точки 𝐴 минус минус два, потому что это 𝑥-координата точки 𝐵, что даст нам результат 10. И это потому, что если вычесть отрицательный это то же самое, что добавить. Таким образом, восемь добавить два равно 10. И если мы подумаем о числовой прямой если мы считаем от минус двух до восьми, мы считаем 10 шагов. Так что это правильно. Так здорово, это наша длина нашего база.
Итак, теперь мы хотим работать наша перпендикулярная высота ℎ. И чтобы сделать это, это будет равно минус два минус минус восемь. И это потому, что у нас есть минус два, потому что это точка, в которой 𝐴𝐵 пересекает ось 𝑦. А потом из этого вычитаем минус восемь. И это потому, что минус восемь есть 𝑦-координата точки 𝐶. Опять же, когда вы вычитаете минус это положительно. Итак, у вас есть отрицательные два, добавьте восемь что дает шестерку. И снова, если мы подумаем о том, если мы считаем от минус двух до минус восьми, это будет шесть пробелов или шесть единиц. Так что это правильно.
Итак, у нас есть 𝐵 и ℎ. Итак, теперь найдем площадь нашего треугольник. Таким образом, площадь треугольник 𝐴𝐵𝐶 будет равен половине, умноженной на 10, умноженной на шесть. И мы можем решить это с помощью думая, что половина из 10? Ну, это пять. Пять умножить на шесть равно 30. Таким образом, мы можем сказать, что площадь треугольника 𝐴𝐵𝐶 — учитывая, что координаты точек 𝐴, 𝐵 и 𝐶 восемь, минус два; минус два, минус два; и ноль, минус восемь — составляет 30 единиц в квадрате. И это наша область.
Найдите площадь треугольника, зная точки вершин?
Предыдущая статья Следующая статья
(Последнее обновление: 8 января 2023 г.)
Постановка задачи: EE Board Апрель 1994 г.
Даны три вершины треугольника с координатами A (1, 1), B (3, -3) и (5, -3). Найдите площадь треугольника.
Ответ на задачу:
Площадь треугольника при данных вершинах равна 4 кв. шт. .
View Solution:
Этот контент предназначен для членов Premium. Устали от рекламы?
Подпишитесь, чтобы разблокировать контент! и Удалить рекламу.
Последнее решение задач аналитической геометрии (точки, линии и окружности)
- Решение: Найдите уравнение прямой, зная длину отрезка прямой
- Решение: Найдите площадь треугольника, который образует линия 2x–3y+6=0 с координатной осью .
- Решение: Каково геометрическое место третьей вершины треугольника?
- Решение: Найдите наклон линии, имеющей параметрическое уравнение y=4t+6 и x=t+1
- Решение: Найдите наклон линии, имеющей параметрическое уравнение x=2+t и y=5–3t
- Решение: Каково уравнение прямой, проходящей через (-2, 6) с точкой пересечения по оси x, равной половине точки пересечения с y?
- Решение: Каково уравнение прямой, соединяющей точки (3, -2) и (-7, 6)?
- Решение: Каково уравнение прямой, проходящей через (-3, -5) параллельно 7x+2y–4=0?
- Решение: Какая из следующих прямых параллельна прямой 3x–2y+6=0?
- Решение: Найдите уравнение биссектрисы, соединяющей точки (5, 0) и (-7, 3)
- Решение: Найдите уравнение прямой, проходящей через точку (3, 1) и перпендикулярной прямой x+5y+5=0
- Решение: Каково уравнение прямой, проходящей через (4, 0) и параллельной прямой x–y–2=0?
- Решение: Прямая, проходящая через (-5, 2) и (1, -4), перпендикулярна прямой, проходящей через (x, -7) и (8, 7).
- Решение: Прямая 2x–3y+2=0 перпендикулярна другой прямой L1 неизвестного уравнения
- Решение. Определите B так, чтобы 3x+2y–7=0 было перпендикулярно 2x–By+2=0
- Решение: Найдите уравнение прямой, если точки пересечения по осям x и y равны -2 и 4
- Решение: Найдите уравнение прямой, проходящей через начало координат и имеющей наклон 6?
- Решение: Какова координата x точки на прямой, если соответствующая ей координата y равна 6?
- Решение: Каково уравнение прямой, пересекающей ось x в точке x=4 и ось y в точке y=-6?
- Решение: Если точки (-2, 3), (x, y) и (-3, 5) лежат на прямой, то каково уравнение прямой?
- Решение: Найдите уравнение прямой линии с наклоном 3 и точкой пересечения с координатой 1
- Решение: Чему равен x-отрезок прямой, проходящей через точки (1, 4) и (4, 1)?
- Решение: Найдите уравнение прямой, проходящей через точки (1, -3) и (-4, 2) в форме пересечения с наклоном
- Решение: Чему равна площадь квадрата с учетом точек вершин?
- Решение: Найдите площадь треугольника по точкам вершин?
- Решение: Чему равна площадь треугольника при данных вершинах?
- Решение: Каков наклон линии 3x+2y+1=0?
- Решение: Найдите наклон линии, заданной уравнением y–x=5
- Решение: Какова длина линии с наклоном 4/3 от точки (6, 4) до оси Y?
- Решение: Найдите расстояние между линиями 3x+y–12=0 и 3x+y–4=0
- Решение: Найдите расстояние между данными прямыми 4x–3y=12 и 4x–3y=-8
- Решение: Каково расстояние от точки (1, 3) до прямой 4x+3y+12=0?
- Решение: Определить расстояние от (5, 10) до прямой x–y=0
- Решение: Каково расстояние от точки (2, 1) до прямой 4x–3y+5=0?
- Решение: Какие две точки на прямой находятся на расстоянии 2 единиц от другой прямой?
- Решение: Найдите расстояние линии 3x+4y=5 от начала координат
- Решение: Чему равен острый угол между прямыми y=3x+2 и y=4x+9?
- Решение: Найдите угол между прямыми 3x+2y=6 и x+y=6
- Решение: Найдите угол, образованный линиями 2x+y–8=0 и x+3y+4=0
- Решение: Найдите наклон линии, проходящей через (-5, 3) и (10, 7)
- Решение: Найдите абсциссу P, если ее ордината равна 6
- Решение: Точки (a, 1), (b, 2) и (c, 3) лежат на одной прямой.