JAVA的基础问题
packaged01;/*有一个三角形类Triangle,成员变量有底边x和另一条边y,和两边的夹角a(0<a<180),a为静态成员,成员方法有两个:求面积s(无参数)...
package d01;
/*有一个三角形类Triangle,成员变量有底边x和另一条边y,和两边的夹角a(0<a<180),
a为静态成员,成员方法有两个:求面积s(无参数)和修改角度(参数为角度)。 构造函数为
Triangle(int xx,int yy,int aa) ,参数分别为x,y,a赋值,在main方法中构造两个对象,
求出其面积,然后使用修改角度的方法,修改两边的夹角,再求出面积值。
(提示:求高的方法 h=y*Math.sin(a) )*/
class Triangle
{
double x;
double y;
double a;
double s;
double h;
public Triangle(double xx,double yy,double aa)
{
this.x=xx;
this.y=yy;
this.a=aa;
}
public double print1()
{
h=y*Math.sin(a);
s=x*h;
return s;
}
}
public class Main
{
public static void main(String args[])
{
Triangle t=new Triangle(10,10,60);
System.out.print(t.print1());
}
}
汗,忘了写了!我是想知道为什么这段代码输出的结果为什么是负的。谢谢哈,各位。 展开
/*有一个三角形类Triangle,成员变量有底边x和另一条边y,和两边的夹角a(0<a<180),
a为静态成员,成员方法有两个:求面积s(无参数)和修改角度(参数为角度)。 构造函数为
Triangle(int xx,int yy,int aa) ,参数分别为x,y,a赋值,在main方法中构造两个对象,
求出其面积,然后使用修改角度的方法,修改两边的夹角,再求出面积值。
(提示:求高的方法 h=y*Math.sin(a) )*/
class Triangle
{
double x;
double y;
double a;
double s;
double h;
public Triangle(double xx,double yy,double aa)
{
this.x=xx;
this.y=yy;
this.a=aa;
}
public double print1()
{
h=y*Math.sin(a);
s=x*h;
return s;
}
}
public class Main
{
public static void main(String args[])
{
Triangle t=new Triangle(10,10,60);
System.out.print(t.print1());
}
}
汗,忘了写了!我是想知道为什么这段代码输出的结果为什么是负的。谢谢哈,各位。 展开
3个回答
展开全部
请看一下api说明:
public static double sin(double a)返回角的三角正弦。特殊情况如下:
如果参数为 NaN 或无穷大,那么结果为 NaN。
如果参数为 0,那么结果为 0,符号与参数符号相同。
计算结果必须在准确结果的 1 ulp 范围内。结果必须具有半单调性。
参数:
a - 以弧度表示的角。
返回:
参数的正弦。
这里可以知道sin的参数必须是弧度表示的角,你直接用的角度的角,肯定会出错啦,你把角度角转成弧度角再计算就成你想要的了
public static double sin(double a)返回角的三角正弦。特殊情况如下:
如果参数为 NaN 或无穷大,那么结果为 NaN。
如果参数为 0,那么结果为 0,符号与参数符号相同。
计算结果必须在准确结果的 1 ulp 范围内。结果必须具有半单调性。
参数:
a - 以弧度表示的角。
返回:
参数的正弦。
这里可以知道sin的参数必须是弧度表示的角,你直接用的角度的角,肯定会出错啦,你把角度角转成弧度角再计算就成你想要的了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询