import java.util.*;
import java.lang.*;
public class Main
{
public static void main (String[] args) throws java.lang.Exception
{
Figure figurs[]=new Figure[3];
figurs[0] = new Circle(1,1,1.5);
figurs[1] = new Quadrate(1,1,3,3);
figurs[2] = new Segment(0,0,1,0);
for(Figure i: figurs){
System.out.println(i.getSquare());
}
}
}
abstract class Figure{
abstract public double getSquare();
}
class Circle extends Figure{
private double x,y,r;
public Circle(double x,double y,double r){
this.x=x;
this.y=y;
this.r=r;
}
@Override
public double getSquare(){
return Math.PI*r*r;
}
}
class Quadrate extends Figure{
private double x,y,x1,y1;
public Quadrate(double x,double y,double x1,double y1){
this.x=x;
this.y=y;
this.x1=x1;
this.y1=y1;
}
@Override
public double getSquare(){
return Math.
abs(x
-x1
)*Math.
abs(y
-y1
); }
}
class Segment extends Figure{
private double x,y,x1,y1;
public Segment(double x,double y,double x1,double y1){
this.x=x;
this.y=y;
this.x1=x1;
this.y1=y1;
}
@Override
public double getSquare(){
return 0;
//площадь отрезка всегда 0
}
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CgpwdWJsaWMgY2xhc3MgTWFpbgp7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb24KCXsJCgkJRmlndXJlIGZpZ3Vyc1tdPW5ldyBGaWd1cmVbM107CQoJCWZpZ3Vyc1swXSA9IG5ldyBDaXJjbGUoMSwxLDEuNSk7CgkJZmlndXJzWzFdID0gbmV3IFF1YWRyYXRlKDEsMSwzLDMpOwoJCWZpZ3Vyc1syXSA9IG5ldyBTZWdtZW50KDAsMCwxLDApOwoJCWZvcihGaWd1cmUgaTogZmlndXJzKXsKCQkJU3lzdGVtLm91dC5wcmludGxuKGkuZ2V0U3F1YXJlKCkpOwoJCX0KCgl9Cn0KYWJzdHJhY3QgY2xhc3MgRmlndXJlewoJYWJzdHJhY3QgcHVibGljIGRvdWJsZSBnZXRTcXVhcmUoKTsKfQpjbGFzcyBDaXJjbGUgZXh0ZW5kcyBGaWd1cmV7Cglwcml2YXRlIGRvdWJsZSB4LHkscjsKCXB1YmxpYyBDaXJjbGUoZG91YmxlIHgsZG91YmxlIHksZG91YmxlIHIpewoJCXRoaXMueD14OwoJCXRoaXMueT15OwoJCXRoaXMucj1yOwoJfQoJQE92ZXJyaWRlCglwdWJsaWMgZG91YmxlIGdldFNxdWFyZSgpewoJCXJldHVybiBNYXRoLlBJKnIqcjsKCX0KfQpjbGFzcyBRdWFkcmF0ZSBleHRlbmRzIEZpZ3VyZXsKCXByaXZhdGUgZG91YmxlIHgseSx4MSx5MTsKCXB1YmxpYyBRdWFkcmF0ZShkb3VibGUgeCxkb3VibGUgeSxkb3VibGUgeDEsZG91YmxlIHkxKXsKCQl0aGlzLng9eDsKCQl0aGlzLnk9eTsKCQl0aGlzLngxPXgxOwoJCXRoaXMueTE9eTE7Cgl9CglAT3ZlcnJpZGUKCXB1YmxpYyBkb3VibGUgZ2V0U3F1YXJlKCl7CgkJcmV0dXJuIE1hdGguYWJzKHgteDEpKk1hdGguYWJzKHkteTEpOwoJfQp9CmNsYXNzIFNlZ21lbnQgZXh0ZW5kcyBGaWd1cmV7Cglwcml2YXRlIGRvdWJsZSB4LHkseDEseTE7CglwdWJsaWMgU2VnbWVudChkb3VibGUgeCxkb3VibGUgeSxkb3VibGUgeDEsZG91YmxlIHkxKXsKCQl0aGlzLng9eDsKCQl0aGlzLnk9eTsKCQl0aGlzLngxPXgxOwoJCXRoaXMueTE9eTE7Cgl9CglAT3ZlcnJpZGUKCXB1YmxpYyBkb3VibGUgZ2V0U3F1YXJlKCl7CgkJcmV0dXJuIDA7CgkJLy/Qv9C70L7RidCw0LTRjCDQvtGC0YDQtdC30LrQsCDQstGB0LXQs9C00LAgMAoJfQp9
Mozart Compiler 1.4.0 (20080704) playing Oz 3
%%% feeding file prog.oz
%*************************** parse error ************************
%**
%** syntax error, unexpected T_OZATOM, expecting T_ENDOFFILE
%**
%** in file "./prog.oz", line 1, column 7
%** ------------------ rejected (1 error)