Написать тригонометрический калькулятор на Python или C++. Примечания: калькулятор должен уметь вычислять sin, cos, tan и углы. Калькулятор должен уметь определять, какой это треугольник: острый, тупой, равнобедренный, равносторонний и т.д.
Ответы на вопрос
Вариант на Python:
import math
def triangle_type(a, b, c):
if a + b <= c or a + c <= b or b + c <= a:
return "Такого треугольника не существует"
sides = []
if a == b == c:
sides.append("равносторонний")
elif a == b or a == c or b == c:
sides.append("равнобедренный")
else:
sides.append("разносторонний")
x, y, z = sorted([a, b, c])
if x * x + y * y == z * z:
sides.append("прямоугольный")
elif x * x + y * y > z * z:
sides.append("остроугольный")
else:
sides.append("тупоугольный")
return ", ".join(sides)
print("Тригонометрический калькулятор")
print("1 - sin")
print("2 - cos")
print("3 - tan")
print("4 - определить вид треугольника")
choice = input("Выберите действие: ")
if choice in ["1", "2", "3"]:
angle = float(input("Введите угол в градусах: "))
radians = math.radians(angle)
if choice == "1":
print("sin =", math.sin(radians))
elif choice == "2":
print("cos =", math.cos(radians))
elif choice == "3":
if abs(math.cos(radians)) < 0.000001:
print("tan не существует для этого угла")
else:
print("tan =", math.tan(radians))
elif choice == "4":
a = float(input("Введите сторону a: "))
b = float(input("Введите сторону b: "))
c = float(input("Введите сторону c: "))
print(triangle_type(a, b, c))
else:
print("Неверный выбор")
Программа переводит угол из градусов в радианы, потому что функции math.sin, math.cos и math.tan работают с радианами. Вид треугольника определяется по сторонам и по сравнению \( x^2 + y^2 \) с \( z^2 \), где \( z \) — самая большая сторона.
Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili

