Calcula el Seno en Java

Muy buenas, a ver sí hay alguien que me pueda ayudar.

Estoy con un programa en Java que me pide crear una clase para que un usario pueda operar con petagonos regulares, dandole el área, perímetro y diagonal. La cuestión es que para llegar al área tengo que saber el seno. Para un pentagono regular es facil, puedo poner la cifra a mano y a correr, pero en otro ejercicio más adelante me pide implementar una clase similar pero para polígonos regulares.

Así que lo lógico sería que crease una función para calcular el seno. Se que hay una función, que es Math.sin que me da el seno, pero me lo da en radianes o no se que narices por lo que tengo que convertir el valor a grados nuevamente con Math.ToDegrees, pero cuando lo hago, me sale valor del área: NaN o algo así. He provado a convertir el valor a radianes, calcular el seno con Math.sin, pasarlo de nuevo a grados, y usar Math.asin. He provado de todas las maneras posibles y no hay forma de que me salga el valor correcto. El resto del programa funciona perfectamente, sí coloco el valor del seno a mano, me sale el valor del área correcta.

A ver sí alguien me ayuda, pasandome un algoritmo para calcular el seno, o explicandome que puñetas pasa con Math.sin...

¡Un saludo!
No sé si te he entendido.

El resultado del seno no es ni en grados ni en radianes, el seno es una razón, sin unidades. A Math.sin(double) has de pasarle radianes, si lo tienes en grados tienes que usar Math.sin(Math.toRadians(angulo)).

Por cierto, las dudas de java van aquí: hilo_hilo-oficial-ii-java_1305785
1 respuesta