java 既然出现double类型×2的n次方的时候计算结果出现偏差!
代码如下:
package Com.Aftvc.tsing;
public class example {
/**
* @param args
*/
public static void main(String[] args) {
//EXE p = new EXE(8);
//p.decrease();
//p.add();
//p.mult();
Figure tri = new Triangle(3,4,5);
System.out.println("此三角形的周长是:"+tri.GetGirth());
System.out.println("此三角形的面积是:"+tri.GetArea());
Figure cir = new Circle(5);
System.out.println("此圆的周长是:"+cir.GetGirth());
System.out.println("此圆的面积是:"+cir.GetArea());
Figure tra = new Trapezoid(3,9,4,5,5);
System.out.println("此梯形的周长是:"+tra.GetGirth());
System.out.println("此梯形面积是:"+tra.GetArea());
}
}
package Com.Aftvc.tsing;
public class Circle implements Figure{
double r;
public Circle(double r1){
r=r1;
}
public double GetArea(){
return PI*r*r*2;
}
public double GetGirth(){
return PI*r*2;//如果*3结果47.1 *4结果很长!!我测试了1,2,3,4,5,6,7,8,9,10,11,12,16只要是2的n次方就出现很长的结果。
}
}
此三角形的周长是:12.0
此三角形的面积是:6.0
此圆的周长是:31.400000000000002
此圆的面积是:157.0
此梯形的周长是:22.0
此梯形面积是:24.0
return PI*r*2;