10. Даны три натуральных числа. Разработайте, отладьте и протестируйте программу, определяющую, существует ли треугольник с такими длинами сторон. Если такой треугольник существует, то определите его тип (равносторонний, равнобедренный, разносторонний). Для проверки правильности программы используйте тест:
Входные данные
a b c>> 1 2 1
a b c>> 2 2 2
a b c>> 20 20 30
a b c>> 3 4 5
Выходные данные
Не существует
Равносторонний
Равнобедренный
Разносторонний

Ответ
Вот пример программы на языке Python, которая определяет, существует ли треугольник с заданными длинами сторон и определяет его тип:
def triangle_type(a, b, c):
if a == b == c:
return "Равносторонний"
elif a == b or b == c or a == c:
return "Равнобедренный"
else:
return "Разносторонний"
def is_triangle(a, b, c):
if a + b > c and a + c > b and b + c > a:
return True
else:
return False
a, b, c = map(int, input("Введите длины сторон треугольника (через пробел): ").split())
if is_triangle(a, b, c):
print("Существует")
print(triangle_type(a, b, c))
else:
print("Не существует")
Программа определяет две функции: triangle_type, которая принимает длины сторон треугольника и возвращает его тип (равносторонний, равнобедренный или разносторонний), и is_triangle, которая принимает длины сторон треугольника и проверяет, существует ли треугольник с такими сторонами (сравнивая суммы двух сторон с третьей стороной).
Затем программа запрашивает у пользователя длины сторон треугольника и сохраняет их в переменные a, b и c.
Далее программа вызывает функцию is_triangle с аргументами a, b и c и проверяет, существует ли треугольник. Если треугольник существует, программа выводит «Существует» и вызывает функцию triangle_type для определения типа треугольника и выводит соответствующее сообщение. Если треугольник не существует, программа выводит «Не существует».
Можно продемонстрировать работу программы с помощью тестовых данных:
Входные данные:
Длины сторон треугольника: 1 2 1
Выходные данные:
Не существует
Входные данные:
Длины сторон треугольника: 2 2 2
Выходные данные:
Существует
Равносторонний
Входные данные:
Длины сторон треугольника: 20 20 30
Выходные данные:
Существует
Равнобедренный
Входные данные:
Длины сторон треугольника: 3 4 5
Выходные данные:
Существует
Разносторонний