Math.acos дает мне другое значение, чем мой калькулятор

В рубине

Math.acos(10/70) * 57.2958

должен вернуться примерно на 80 градусов (согласно моему калькулятору). Однако он возвращается примерно на 90 градусов. Это почему?

1 ответ

Решение

Вам нужно добавить десятичные точки, иначе Ruby примет целочисленное деление:

irb(main):006:0> Math.acos(10/70) / Math::PI * 180
=> 90.0
irb(main):007:0> Math.acos(10.0/70) / Math::PI * 180
=> 81.78678929826181

Если вы просто используете 10/70, это будет округлено до 0, и вы получите Math.acos(0) вместо Math.acos(0.14..) чего ты хочешь

Другие вопросы по тегам