2014-05-11 2 views
-2

0.5 도의 죄와 sin-1을 얻으려고하면 사실상 같은 대답을 얻습니다. 죄-1 (0.5) (30)를 했어야asin()이 Java에서 제대로 작동하지 않습니다.

Log.d("XYZ", Math.sin(Math.toRadians(0.5)) +"___"+ Math.asin(Math.toRadians(0.5))); 

결과 : 0.008726535498373935___0.008726757025787037

내가 잘못하고있는 중이 야 어떤 생각? 코드의 일부

+2

방정식이 처음부터 잘못되었습니다. sin (0.5)는 여러분이 얻은 것이며, sin-1 (0.5)는 0.5의 사인 값을 갖는 각도입니다. 따라서 30 도가됩니다. 따라서, 라디안에서는 0.5 ... rad가됩니다. – jyoon

답변

1

하나는 즉 Math.asin(Math.toRadians(0.5)) 잘못 .... 0.5 당신이 올바른가 라디안으로 변경할 필요가없는 수치이다.

Log.d("XYZ", Math.sin(Math.toRadians(0.5)) +"___"+ Math.toDegrees(Math.asin(0.5)); 

함수 "Math.asin (0.5)"는 라디안 단위로 값을 제공하므로 각도로 변환해야합니다. 그리고 "sin-1 of 0.5 degrees"가 아니라 "sin-1 of 0.5"... "degrees"가 오지 말아야합니다 ...

+0

예 @jyoon 죄송합니다 ... 내 코드를 편집하고 있습니다 ... – Ankit

+0

sin^-1 0.5 = 30도 = 0.5 ... rad 당신이 틀립니다. – jyoon

+0

대단히 감사합니다! – yes4me

관련 문제