Esta función primero define una función llamada calcular_angulo_referencia que toma un ángulo como parámetro. La función primero convierte el ángulo a radianes si es necesario. Luego, calcula el ángulo de referencia tomando el módulo absoluto del ángulo y dividiéndolo por 2π.
import math
def calcular_angulo_referencia(angulo, tipo_dato):
"""
Esta función calcula el ángulo de referencia, el cuadrante y las positividades de seno, coseno y tangente para un ángulo dado en radianes o grados.
Parámetros:
angulo: El ángulo en radianes o grados.
tipo_dato: Un string que indica si el ángulo es en "radianes" o "grados".
Retorno:
Una tupla que contiene el ángulo de referencia en grados, el cuadrante y las positividades de seno, coseno y tangente.
"""
# Convertir el ángulo a radianes si es necesario
if tipo_dato.lower() == "grados":
angulo = math.radians(angulo)
# Calcular el ángulo de referencia
angulo_ref = abs(angulo) % (2 * math.pi)
# Determinar el cuadrante
if angulo_ref <= math.pi / 2:
cuadrante = 1
elif angulo_ref <= math.pi:
cuadrante = 2
elif angulo_ref <= 3 * math.pi / 2:
cuadrante = 3
else:
cuadrante = 4
# Calcular las positividades de las funciones trigonométricas
seno_positivo = True if cuadrante in [1, 2] else False
coseno_positivo = True if cuadrante in [1, 4] else False
tangente_positivo = True if cuadrante in [1, 3] else False
# Convertir el ángulo de referencia a grados si es necesario
angulo_ref_grados = math.degrees(angulo_ref)
if (float(angulo_ref_grados) > 180.0):
angulo_ref_grados = (360 - angulo_ref_grados) * -1
return angulo_ref_grados, cuadrante, seno_positivo, coseno_positivo, tangente_positivo
# Ejemplo de uso
angulo = float(input("Ingrese el ángulo: "))
tipo_dato = input("Ingrese el tipo de dato (radianes o grados): ").lower()
resultado = calcular_angulo_referencia(angulo, tipo_dato)
print(f"Ángulo de referencia: {resultado[0]:.2f}°")
print(f"Cuadrante: {resultado[1]}")
print(f"Seno positivo: {resultado[2]}")
print(f"Coseno positivo: {resultado[3]}")
print(f"Tangente positiva: {resultado[4]}")
A continuación, la función determina el cuadrante en el que se encuentra el ángulo de referencia dividiendo el rango de 0 a 2π en cuatro cuadrantes iguales, y también el tipo de dato (radianes o grados). Finalmente, la función calcula las positividades de las funciones trigonométricas seno, coseno y tangente para el ángulo de referencia en el cuadrante determinado.
La función devuelve una tupla que contiene el ángulo de referencia en grados, el cuadrante, y las positividades de seno, coseno y tangente.
La parte final del código proporciona un ejemplo de cómo usar la función calcular_angulo_referencia. Solicita al usuario que ingrese un ángulo en radianes o grados, y luego imprime los resultados devueltos por la función.