有人可以帮助我纠正使用Java查找x的错误吗?

时间:2018-09-23 04:40:11

标签: java math

有人可以帮助我弄清楚我在做什么错吗?

import java.lang.Math;

public class Exercise {

    public static void main(String[]args) {
        double a = 65;
        double angle = Math.cos(20);
        double x= (65/angle);
        System.out.println(angle);
    }

}

这将导致0.40808206181339196作为输出。 但这不是我所期望的。

enter image description here

2 个答案:

答案 0 :(得分:2)

下面是代码。

import java.text.DecimalFormat;

public class Test2  
{
  public static void main(String[] args)
  {
    DecimalFormat df = new DecimalFormat("#.###");

    double o = 65;
    double angle = Math.sin(Math.toRadians(20));
    double x = o/angle;
    System.out.println(df.format(x));
  }
}

您的代码中的问题:
1. Math.cos(20);此处的20度应转换为弧度,因为Math类使用Radians而不是度作为参数。
2.使用角度和对侧找到斜边的公式是-> Sine: sin(θ) = Opposite / Hypotenuse

要将十进制数字格式设置为我使用的3个小数位-> DecimalFormat df = new DecimalFormat("#.###");

答案 1 :(得分:1)

math.cos()以弧度而不是度为单位的角度作为参数。因此,您必须转换参数以获得正确的结果。

https://www.tutorialspoint.com/java/lang/math_cos.htm