-4

我试图找到用户输入的数字的罪过,例如 1.5。我已经在计算器上完成了它,它可以工作,但代码不起作用。

这是代码:

package msd1;
import java.util.Scanner;
public class Part3
{     
    public static void main(String[] args) 
    {    
        Scanner scanner = new Scanner(System.in);

        System.out.println("Enter a number");

        double Height = scanner.nextDouble();

        double Angle =  Height/2;

        double asine = Math.asin(Angle);

        System.out.println("Arcsine of " + Angle + " = " + asine);

    }

}
4

1 回答 1

8

你的变量名没有意义。“高度”是长度,将长度除以 2 不会给您一个“角度”。此外,您不会将“角度”asin传递给 ,而是将一个从 -1 到 +1 的数字传递给它,然后它会返回一个角度。

在您的情况下,您想要取梯子的高度并将其除以它的长度,以得出您的罪(-1 和 +1 之间),然后取该值的 asin。

很可能您还想采用asin弧度返回的角度并转换为度数。

你可能有这样的代码:

double lengthOfLadder = 2.0;
double height = scanner.nextDouble();
double sine = height / lengthOfLadder;
double angleInRadians = Math.asin(sine);
double angleInDegrees = angleInRadians / Math.PI * 180;
于 2013-10-25T18:20:36.900 回答