import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scan = new Scanner(System.in); double length = scan.nextDouble(); Shape s = new Square(length); System.out.printf("%.2f ", s.getPerimeter()); System.out.printf("%.2f\n", s.getArea()); length = scan.nextDouble(); double wide = scan.nextDouble(); Shape r = new Rectangle(length, wide); System.out.printf("%.2f ", r.getPerimeter()); System.out.printf("%.2f\n", r.getArea()); double radius = scan.nextDouble(); Shape c = new Circle(radius); System.out.printf("%.2f ", c.getPerimeter()); System.out.printf("%.2f\n", c.getArea()); scan.close(); } } abstract class Shape { private double length; private double wide; public Shape(double len) { length = len; } public Shape(double len, double wi) { length = len; wide = wi; } public double getLength() { return length; } public double getWide() { return wide; } public abstract double getPerimeter(); public abstract double getArea(); } class Square extends Shape { public Square(double len) { super(len, len); } public Square(double len, double wi) { super(len, wi); } public double getLength() { return super.getLength(); } public double getWide() { return super.getWide(); } public double getPerimeter() { return 2*(super.getLength()+super.getWide()); } public double getArea() { return super.getLength()*super.getWide(); } } class Rectangle extends Square{ public Rectangle(double len, double wi) { super(len, wi); } public double getPerimeter() { return 2*(super.getLength()+super.getWide()); } public double getArea() { return super.getLength()*super.getWide(); } } class Circle extends Shape{ public Circle(double len) { super(len); } public double getPerimeter() { return 2*3.14159*super.getLength(); } public double getArea() { return 3.14159*super.getLength()*super.getLength(); } }