Помощ с задача 2. Center Point ?
Здравейте! Въпросната задача ми дава 80/100 точки. Защо?
Здравейте! Въпросната задача ми дава 80/100 точки. Защо?
Здравей,
Намираш отделно по-близката до 0 стойност на x и y.
В задача са дали координати на 2 точки, всяка с двойка x и y стойност. При проверките ти може да x стойност от първата точка и y стойност от втората. Например:
-1
10
11
2
(-1, 2)
Няма такава подадена точка на инпута.
Има доста по-лесни начини. Например ако свържем точката с центъра на координатната система и с оста x, ще се получи правоъгълен триъгълник:
Дистанцията от точката до центъра е хипотенузата в триъгълника, затова може да се приложи питагорова теорема:
https://www.codingem.com/pythagorean-theorem-in-python/
След като сметнем двете дистанции просто трябва да определим коя е по-малка и да принтираме точката:
В math модула има и функция, която може да се използва за тази сметка: math.hypot
import math
def result_coord(co_a1, co_b1, co_a2, co_b2):
distance1 = math.hypot(co_a1, co_b1)
distance2 = math.hypot(co_a2, co_b2)
return f"({math.floor(co_a1)}, {math.floor(co_b1)})" if distance1 <= distance2 else f"({math.floor(co_a2)}, {math.floor(co_b2)})"
co_x1 = float(input())
co_y1 = float(input())
co_x2 = float(input())
co_y2 = float(input())
print(result_coord(co_x1, co_y1, co_x2, co_y2))