我试图找到用户输入的数字的罪,例如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);
}
}
Run Code Online (Sandbox Code Playgroud)
你的变量名没有意义."高度"是一个长度,将长度除以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;
Run Code Online (Sandbox Code Playgroud)