Предмет: Информатика,
автор: Аноним
Аркадий едет в офис на электросамокате. У него есть два возможных маршртута, по пути он обязательно покупает кофе и булочку с маком.
Аркадий обожает координатную плоскость. Так что у него уже есть данные обо всех точках с кофе.
Напишите программу, которая будет вычислять длину самого короткого маршрута до офиса.
А - точка старта, D - точка финиша (офис), C и B - это кофейни, в одну из которых нужно заехать Аркадию.
Все координаты точек вводятся с клавиатуры.
Формат входных данных
С клавиатуры вводятся 8 целых неотрицательных чисел, каждое с новой строки.
Сначала пара координат точки A, пара координат точки B, затем точки C и D.
Формат выходных данных
Одно число - длина самого короткого маршрута. Ответ округлите до 2 знаков после запятой при помощи функции round(x, 2)
Примечания
Да пребудет с вами сила уже готовых функций :)
Вот карта:
Приложения:
Аноним:
спасите пж
Ответы
Автор ответа:
1
Ответ:import math
def point_in_circle(xa, ya, xb, yb, xc, yc,xd,yd):
l1 = math.sqrt((xa - xb) * (xa - xb) + (ya - yb) * (ya - yb))
l2 = math.sqrt((xb - xd) * (xb - xd) + (yb - yd) * (yb - yd))
r1 = math.sqrt((xa - xc) * (xa - xc) + (ya - yc) * (ya - yc))
r2 = math.sqrt((xc - xd) * (xc - xd) + (yc - yd) * (yc - yd))
l = round(l1+l2,2)
r = round(r1+r2,2)
if l > r:
return r
elif r > l:
return l
xa = float(input())
ya = float(input())
xb = float(input())
yb = float(input())
xc = float(input())
yc = float(input())
xd = float(input())
yd = float(input())
print(point_in_circle(xa, ya, xb, yb, xc, yc,xd,yd))
Объяснение:
Похожие вопросы
Предмет: Математика,
автор: ArhiLich
Предмет: Математика,
автор: anitasre76
Предмет: Математика,
автор: kolua1998
Предмет: Информатика,
автор: Ботаник001