我正在制作一个Trig计算器,目的是为了有趣地练习航空问题,并且无法在Java中将弧度正确转换为度。
我已经尝试将海拔高度除以Math.tan(angle),再乘以(180 / Math.PI),但这并不能为我提供所需的答案。 我尝试过的数字包括alt = 500,接近角度=3。我的代码将存储这些值,并采用500 / tan(3)*(180 / Pi),但我不确定为什么这不是正确的三角函数在它后面。
public static void approachPath() {
System.out.println("FINDING THE IDEAL APPROACH PATH . . . ");
System.out.println("What is the altitude of the aircraft:");
double alt = scan.nextDouble();
System.out.println("What is the angle of approach:");
double angleofapproach = scan.nextDouble();
//line my problem occurs on
double approachPath = (alt / Math.tan(angleofapproach)) * (180 / Math.PI);
System.out.println("The ideal approach path is: " + approachPath);
}
我希望得到9,541英尺的答案,因此我可以继续编写方法的其余部分,以找到海里的最终进近路径。
答案 0 :(得分:1)
您几乎是正确的。而不是rad到deg,应该是rad到rad。
double angleofapproach = toRad(scan.nextDouble());
double approachPath = (alt / Math.tan(angleofapproach));
// deg to rad
public static double toRad(double deg) {
return deg * (Math.PI / 180);
}