напишите функцию вычисляющую длину отрезка по координатам его концов A(x1, y1) B(x2, y2) C(x3, y3
Понимаю. В задаче речь идёт о вычислении длины отрезка по координатам концов. Если дано A(x1, y1) и B(x2, y2), то длина AB равна sqrt((x2−x1)^2 + (y2−y1)^2). В случае наличия третьей точки C(x3, y3) можно вычислить длины всех трех сторон треугольника AB, BC и CA, если нужно.
Разбор по шагам
- Формула расстояния между двумя точками на плоскости:
d(A,B) = sqrt((x2 − x1)^2 + (y2 − y1)^2)
- Если есть три точки A, B, C, то можно посчитать:
AB = d(A,B)
BC = d(B,C)
CA = d(C,A)
Пример реализации (Python)
- Функция для расстояния между двумя точками:
def distance_between_points(x1, y1, x2, y2):
import math
dx = x2 - x1
dy = y2 - y1
return math.hypot(dx, dy) # эквивалентно sqrt(dx*dx + dy*dy)
- Функция для расстояний между всеми парами точек A, B, C:
def pairwise_distances(x1, y1, x2, y2, x3, y3):
import math
AB = math.hypot(x2 - x1, y2 - y1)
BC = math.hypot(x3 - x2, y3 - y2)
CA = math.hypot(x1 - x3, y1 - y3)
return AB, BC, CA
Пример использования
- Пусть A(0, 0), B(3, 4), C(1, 1)
AB = distance_between_points(0, 0, 3, 4) # 5.0
BC = distance_between_points(3, 4, 1, 1) # sqrt( (−2)^2 + (−3)^2 ) = 5.0
CA = distance_between_points(1, 1, 0, 0) # sqrt(1^2 + 1^2) ≈ 1.4142
Альтернативно можно использовать math.hypot напрямую:
import math
AB = math.hypot(x2 - x1, y2 - y1)
Если ваша задача точно требует только длины отрезка AB, достаточно функции distance_between_points с аргументами x1,y1,x2,y2. Если же нужно все три стороны треугольника, используйте pairwise_distances. Если хотите, пришлите конкретные значения A, B, C, и я посчитаю все нужные длины.