galera
to precisando utilizar seno e cosseno aqui em java
o problema é que utilizando Math.cos(angulo) e Math.sin(angulo) ta retornando resultado errado
pq isso?
Ex:
Math.sin(90) ta retornando 0.89 quando devia retornar 1
e Math.cos(90) ta retornando -0.44 quando deveria estar retornando 0
Parece ser problemas normais que acontecem desde quando foi inventado o primeiro computador quando números reais são armazenados em formato binário. Imprima o valores e verá que tem muito mais decimais:
Porém se você quiser calcular o valor em radianos que é o default das funções trigonométricas de Math, precisa fazer assim:
public class Teste {
public static void main(String args[]) {
System.out.println("Math.sin(Math.PI/2): " + Math.sin(Math.PI/2));
System.out.println("Math.cos(Math.PI/2): " + Math.cos(Math.PI/2));
}
}
E o resultado será o que você espera:
[code]
C:[code]
C:> java Teste
Math.sin(Math.PI/2): 1.0
Math.cos(Math.PI/2): 6.123233995736766E-17
C:>[/code]gt java Teste
Math.sin(Math.PI/2): 1.0
Math.cos(Math.PI/2): 6.123233995736766E-17
C:[code]
C:> java Teste
Math.sin(Math.PI/2): 1.0
Math.cos(Math.PI/2): 6.123233995736766E-17
C:>[/code]gt[/code]
Ou usar Math.toRadians() para converter os ângulos dados em graus.