import math class labTest: def __init__(self): pass def calc_roots(self, a, b, c): if a == 0: raise ValueError("Невозможно найти корни, так как уравнение не является квадратным.") # дискриминант discriminant = b ** 2 - 4 * a * c print(f"Дискриминант равен {discriminant:.2f}, ", end='') if discriminant > 0: print("уравнение имеет 2 различных вещественных корня.") # Два различных корня x1 = (-b + math.sqrt(discriminant)) / (2 * a) x2 = (-b - math.sqrt(discriminant)) / (2 * a) return [round(x1, 2), round(x2, 2)] elif discriminant == 0: print("уравнение имеет 1 вещественный корень.") # Один корень x = -b / (2 * a) return [round(x, 2)] else: print("уравнение не имеет вещественных корней.") # Нет вещественных корней return [] # Коэффициенты уравнения # a, b, c = 0, -3, 2 // 1 -3 2 def main(self, a, b, c): try: X = self.calc_roots(a, b, c) if X: print(f"Корни уравнения: {', '.join(map(str, X))}.") else: print("Корни уравнения отсутствуют.") except ValueError as e: print(e) def start(self): try: a = int(input("Введите a: ")) b = int(input("Введите b: ")) c = int(input("Введите c: ")) self.main(a, b, c) except ValueError: print("Ошибка ввода: необходимо ввести целые числа для a, b и c.") if __name__ == "__main__": lT = labTest() lT.start()