龙猫12138 2017-05-10 13:25 采纳率: 0%
浏览 1739
已采纳

java 里面,我使用了math下面sin方法,但是为什么以下两种参数出来的结果大大不同?下有代码

public class ClockTest
{
public ClockTest ()
{
System.out.println(Math.round(500*Math.sin(30*Math.PI/180))) ;
System.out.println(Math.round(500*Math.sin((1/6)*Math.PI))) ;
}
public static void main(String[] args)
{
// TODO Auto-generated method stub
new ClockTest () ;
}

}
就是中间那两行println,按道理来说,两个出来的结果都是250,但是下面那个出来是0,真是奇怪

  • 写回答

1条回答 默认 最新

  • u012843150 2017-05-10 13:25
    关注

    1/6 是等于0的,所以,你先就是sin(0*Math.PI)==0 ,基础不牢啊

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?