//File Cerchio.java
package figure;

public class Cerchio extends Figura {
  private double raggio;
  public Cerchio(String c,double r) { 
    super(c);
    raggio = r;
  }
  public Cerchio(double r) { 
    //super();
    raggio = r;
  }
  public double getPerimetro() {
    return 2*Math.PI*raggio;
  }
  public double getArea() {
    return Math.PI*raggio*raggio;
  }
}


//File Rettangolo.java
package figure;

public class Rettangolo extends Figura {
  private double base;
  private double altezza;
  public Rettangolo(String c,double b, double a) { 
    super(c);
    base = b;
    altezza = a;
  }
  public Rettangolo(double b, double a) { 
    //super();
    base = b;
    altezza = a;
  }
  public double getPerimetro() {
    return base+altezza+base+altezza;
  }
  public double getArea() {
    return base*altezza;
  }
}


//File Triangolo.java
package figure;

public class Triangolo extends Figura {
  private double l1;
  private double l2;
  private double l3;
  public Triangolo(String c,double l1, double l2, double l3) { 
    super(c);
    this.l1 = l1;
    this.l2 = l2;
    this.l3 = l3;
  }
  public Triangolo(double l1, double l2, double l3) { 
    //super();
    this.l1 = l1;
    this.l2 = l2;
    this.l3 = l3;
  }
  public double getPerimetro() {
    return l1+l2+l3;
  }
  public double getArea() {
    //basato su formula di Erone
    double sp = getPerimetro()/2;
    return Math.sqrt(sp*(sp-l1)*(sp-l2)*(sp-l3));
  }
}