2014-05-11 3 views
-2

Если я попытаюсь получить грех и грех-1 0,5 градуса, я получаю практически тот же ответ. грех 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 ... рад. – 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)» дает значение в радианах, поэтому вам нужно преобразовать ее в градусы. , и это не «грех-1 0,5 градуса», а «грех-1 0,5» ... «градусы» не должны появляться ...

+0

да @jyoon Прошу прощения, я получил его ... просто подождите, я редактирую свой код. – Ankit

+0

sin^-1 0.5 = 30 градусов = 0.5 ... рад, вы ошибаетесь. – jyoon

+0

Большое спасибо! – yes4me

Смежные вопросы