Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import math
- def triangle_area(data):
- if type(data) != list or len(data) != 3:
- return "Błąd. Argument musi być listą trzech współrzędnych."
- for i in data:
- if len(i) != 2 or type(i) != list:
- return "Błędne współrzędne"
- for element in i:
- try:
- float(element)
- except Exception:
- return "Współrzędne muszą składać się z liczb."
- line_check = (data[0][0] * (data[1][1] - data[2][1])
- + data[1][0] * (data[2][1] - data[0][1])
- + data[2][0] * (data[0][1] - data[1][1]))/2
- if line_check == 0:
- return "Podane współrzędne tworzą punkty należące do linii prostej. Utworzenie trójkąta niemożliwe"
- def distance(num1, num2):
- return math.hypot(num1[0] - num2[0], num1[1] - num2[1])
- side_a = distance(data[0], data[1])
- side_b = distance(data[1], data[2])
- side_c = distance(data[2], data[0])
- s = 0.5 * (side_a + side_b + side_c)
- result = math.sqrt(s * (s - side_a) * (s - side_b) * (s - side_c))
- return "Pole trójkąta wynosi " + format(result, '.2f')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement