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

O Math.sin(double a) recebe como parâmetro um double em radianos somente. E você está usando as funções Math.toDegrees() e Math.toRadians() errado. A primeira recebe um valor em radianos e passa para graus, a segunda passa de graus para radianos. Se queres confirmar direito com um número bonito, tente seno de 30 graus e verás qual é o erro.

Até!

Revisando:
Math.toRadians -> Converte de graus para radianos.
Math.toDegrees -> Converte de radianos para graus

Todas as funções que envolvem angulos trabalham em radianos.

Portanto, se a possui um ângulo de 45º, você deve converte-lo para radianos antes de calcular o seno:

int sinARad = Math.sin(Math.toRadians(a)); // Calcula o seno de a em radianos.

[quote=ViniGodoy]Revisando:
Math.toRadians -> Converte de graus para radianos.
Math.toDegrees -> Converte de radianos para graus

Todas as funções que envolvem angulos trabalham em radianos.

Portanto, se a possui um ângulo de 45º, você deve converte-lo para radianos antes de calcular o seno:

int sinARad = Math.sin(Math.toRadians(a)); // Calcula o seno de a, em radianos.

A resposta também será em radianos. Se quisermos passa-la para graus, teremos de reconverter novamente:

int sinADeg = Math.toDegrees(Math.sin(Math.toRadians(a))); // Calcula o seno de a, em graus.

[/quote]
Acho que não. Veja o código:

class Teste{ public static void main(String args[]){ double a = 30; System.out.println("O seno de " + a + " é " + Math.sin(Math.toRadians(a))); } }
O retorno é:O seno de 30.0 é 0.49999999999999994

Onde o seno de um ângulo será outro ângulo?

Até!

[quote=maquiavelbona][quote=ViniGodoy]Revisando:
Math.toRadians -> Converte de graus para radianos.
Math.toDegrees -> Converte de radianos para graus

Todas as funções que envolvem angulos trabalham em radianos.

Portanto, se a possui um ângulo de 45º, você deve converte-lo para radianos antes de calcular o seno:

int sinARad = Math.sin(Math.toRadians(a)); // Calcula o seno de a, em radianos.

A resposta também será em radianos. Se quisermos passa-la para graus, teremos de reconverter novamente:

int sinADeg = Math.toDegrees(Math.sin(Math.toRadians(a))); // Calcula o seno de a, em graus.

[/quote]
Acho que não. Veja o código:

class Teste{ public static void main(String args[]){ double a = 30; System.out.println("O seno de " + a + " é " + Math.sin(Math.toRadians(a))); } }
O retorno é:O seno de 30.0 é 0.49999999999999994

Onde o seno de um ângulo será outro ângulo?

Até![/quote]

Seno de 30 é 0,5 não é? E como o double tem aqueles problemas de precisão, etc, etc, etc…
Não sei onde vc está vendo erro maquiavel, sendo que 0,49999999999999994 apesar de não ser uma dízima (se fosse dízima poderíamos sim afirmar que É igual a 0.5), está muuuito perto de 0,5, sendo assim, está certo e não errado como vc disse.

Até mais.

Não, o código que coloquei está correto. O que estou criticando é o código do Vinny que está tratando errado, o retorno de uma função trigonométrica é uma razão e não um ângulo como ele disse ( tanto para radianos quanto para graus). Não precisa me chutar logo cedo :stuck_out_tongue:

Até!

É, tem razão, eu viajei na segunda parte.

[quote=maquiavelbona]Não, o código que coloquei está correto. O que estou criticando é o código do Vinny que está tratando errado, o retorno de uma função trigonométrica é uma razão e não um ângulo como ele disse ( tanto para radianos quanto para graus). Não precisa me chutar logo cedo :stuck_out_tongue:

Até![/quote]

A tah… Foi mal :frowning: :frowning: :frowning:
hehehehehehe

Apenas para facilitar.

Graus–Radianos Seno Cosseno Tangente (V = Raiz quadrada)
0º---------0---------0-------1---------0
30°-------pi/6-----1/2----V3/2-----V3/3
45º-------pi/4—V2/2-----V2/2------1
60º-------pi/3—V3/2------1/2-----V3
90°-------pi/2----- 1--------0----± Infinito
120º----2pi/3–+V3/2—(-1/2)----(-V3)
135º----3pi/4–+V2/2—(-V2/2)—(-1)
150º----5pi/6–+1/2-----(-V3/2)–(-V3/3)
180º-----pi------- 0----- (-1)--------0
210º----7pi/6–(-1/2)----(-V3/2)—+V3/3
225º----5pi/4–(-V2/2)–(-V2/2)—+1
240º----4pi/3–(-V3/2)–(-1/2)-----+V3
270º----3pi/2----(-1)------0-----± Infinito
300º----5pi/3–(-V3/2)—1/2-----(-V3)
315º----7pi/4–(-V2/2)—V2/2----(-1)
330º—11pi/6–(-1/2)-----V3/2–(-V3/3)
360----- 2pi-------0---------1--------0

Cálculos em Radianos em qualquer máquina implicam informar o ângulo em radianos.
O seno em graus ou em radianos é sempre o mesmo. É uma relação que produz um número abstrato
(número que não se refere a medida relativa de qualquer unidade) invariável para o mesmo ângulo em
graus e radianos.

O segredo é informar o valor do ângulo na unidade em que a máquina está ativada (graus ou radianos)