Converter Graus para Radianos

já fiz esta pergunta aqui, mas ou eu não entendi as respostas ou elas estavam erradas. por isso volto a carga:

eu quero obter o seno do angulo de 45 em graus e radianos. usando a calculadora do windows(cientifica)
com a opção graus marcada eu obtenho: 0,707106781186547524400844362104849
usando com a opção radianos marcada eu obtenho: 0,850903524534118424862379677618041
o java possui as funções Math.toRadians que converte de graus para radianos
e a função Math.toDegrees que converte de radianos para graus
tenho uma variavel chamada “a” que tem o valor 45 e quero obter o valor do seno tanto em graus como radianos -
ou seja os valores especificados acima. então:

System.out.println("O seno de " + a + " é " + Math.sin(Math.toRadians(z)));
System.out.println("O seno de " + a + " é " + Math.sin(Math.toDegrees(z)));

respostas:
O seno de 45.0 é 0.7071067811865475
O seno de 45.0 é 0.8060754911159176

ou seja pelo menos na minha cabeça as respostas estão invertidas ele não converteu na primeira resposta
de graus para radianos(Math.toRadians)? a resposta deveria ser 0.8060754911159176 ( que é o obtido na calculadora
do windows usando a opção radianos conforme explicação no inicio desde texto) e não
0.7071067811865475. idem para a segunda resposta que pelo menos para mim deveria ser a primeira

ou seja:

O seno de 45.0 é 0.8060754911159176
O seno de 45.0 é 0.7071067811865475

obrigado a todos desde já

deltanusigma

Amigo, tem uma coisa errada…

O Math.sin do java, recebe um valor em Radianos para calcular o seno. Portanto o resultado correto se tratando do ângulo de 45º é 0.8509035245341184 em radianos.

Olhe aqui: http://java.sun.com/javase/6/docs/api/java/lang/Math.html

Agora quanto a conversão para graus, se vc faz o Math.sin(Math.toRadians(45));, o valor é realmente em graus…

Não me pergunte o pq…eu tb não entendi…

Eu vou na calculadora do windows, digito 45 graus, aperto em sin e ele me diz: “0,70710678118654752440084436210485”

Executo esse programa no java

System.out.println(Math.sin(Math.toRadians(45)));

E ele me diz: “0.7071067811865475”

Novamente vou até a calculadora do windows, digito 45 em radianos e aperto em sin, ele me diz: “0,85090352453411842486237967761804”

Executo esse programa no java

System.out.println(Math.sin(45));

E ele me diz: “0.8509035245341184”

Onde está o problema?! não achei…

Eu achei problema nessa sua linha aqui:

Math.sin(Math.toDegrees(z))

O parâmetro de Math.sin é em radianos, então porque vc converte para graus?