Загрузка данных


import math
import cmath

def calculate_expressions():
    print("=== Часть 1: Вычисление a и b ===")
    x, y, z = 6, 7, 8
    
    # Использование cmath для предотвращения ValueError из-за arccos(49)
    term1 = math.exp(2 * (x ** 2) - y)
    term2 = (3 * cmath.acos(y ** 2)) / ((z ** 2 + x * y) ** 2)
    a = term1 + term2
    
    num_b = abs(x - y) ** 2
    den_b = 3 * z + math.cos(x ** 2)
    b = math.tan(num_b / den_b)
    
    print(f"Значение a: {a}")
    print(f"Значение b: {b}\n")

def check_and_calculate_triangle():
    print("=== Часть 2: Расчет параметров прямоугольного треугольника ===")
    try:
        x1, y1 = map(float, input("Введите координаты точки A (через пробел, например: 0 0): ").split())
        x2, y2 = map(float, input("Введите координаты точки B (через пробел): ").split())
        x3, y3 = map(float, input("Введите координаты точки C (через пробел): ").split())
    except ValueError:
        print("Ошибка: введены некорректные данные. Ожидаются числа.")
        return

    # Вычисление длин сторон
    ab = math.dist((x1, y1), (x2, y2))
    bc = math.dist((x2, y2), (x3, y3))
    ca = math.dist((x3, y3), (x1, y1))
    
    print(f"\nДлины отрезков: AB={ab:.3f}, BC={bc:.3f}, CA={ca:.3f}")

    # Проверка на существование треугольника
    if ab + bc <= ca or ab + ca <= bc or bc + ca <= ab:
        print("Результат: Треугольник с такими координатами не существует (точки лежат на одной прямой).")
        return

    # Классификация треугольника (поиск прямого угла)
    sides = sorted([ab, bc, ca])
    # Проверка теоремы Пифагора (используется math.isclose для точности float)
    if math.isclose(sides[0]**2 + sides[1]**2, sides[2]**2, rel_tol=1e-6):
        print("Результат: Данный треугольник является прямоугольным.")
        # Площадь прямоугольного треугольника равна половине произведения катетов
        area = 0.5 * sides[0] * sides[1]
        print(f"Площадь треугольника: S = {area:.3f}")
    else:
        print("Результат: Треугольник не является прямоугольным. Площадь не вычисляется согласно условию задачи.")

if __name__ == "__main__":
    calculate_expressions()
    check_and_calculate_triangle()