在程序中随机输入一个1-50的数,并求出圆的面积,计算结果四舍五入。
文章下方有math方法的解释和对Math.rint()叫做”四舍五入“的更准确的说法
public class test1{
public static void main(String[] args){
int r;
double area;
r=1+(int)(Math.random()*50);//在前面加1是为了输出随机的1-50,而不是0-50
System.out.println("r="+r);
area=Math.PI*r*r;
System.out.println("area="+Math.rint(area));
}
}
程序中用到三个Math方法分别是;
Math.random()是令系统随机选取大于等于 0.0 且小于 1.0 的伪随机 double 值,我们在程序中“ *50 ”就让随机数变成了0-50.
r=1+(int)(Math.random()*50);
上面这一行代码的意思就是随即输出1-50
那为什么是50不是1-50呢
我们由上Math.random()的定义可知,此方法取不到50,又规定随机数为int类型,所以 "(int)(Math.random()*50“ 输出的结果应该为1-49,然后我们做加一处理,所以r的取值范围变成了1-50.
Math.PI:圆周率
Math.rint:让输出的结果四舍五入,参数类型为double
但是我们可以看程序
System.out.println(Math.rint(3.5));
System.out.println(Math.rint(3.4));
System.out.println(Math.rint(2.5));
我们可以通过测试得到,第一条程序结果输出为4,第二条输出结果为3,第三条输出2.所以我们与其说Math.rint是四舍五入,不如说它是返回最接近参数的整数,如果有两个数同时接近,返回偶数的那一个