这道题不难,有一个坑点是Math.tan函数的参数注意单位是rad
这使得我卡了半天,又没按照题目要求写,没全对,鉴借的别人的代码,特此记录
import java.text.DecimalFormat;
import java.util.Scanner;
abstract class shape {
public abstract double getArea();
public abstract double getPerimeter();
}
class RPentagon extends shape{
private double a;
public double getArea() {
return 5*Math.pow(a,2)/(4*Math.tan(36*Math.PI/180));
}
public double getPerimeter() {
return 5*a;
}
public RPentagon(double a1){
a=a1;
}
}
public class Main{
public static void main(String[]args){
DecimalFormat df=new DecimalFormat("#.####");
Scanner in=new Scanner(System.in);
RPentagon r=new RPentagon(in.nextDouble());
System.out.println(df.format(r.getArea()));
System.out.println(df.format(r.getPerimeter()));
}
}