import java.util.*;
class Rect{
double l;
double h;
double z;
public Rect(double l,double h,double z) {
this.l=l;
this.h=h;
this.z=z;
}
double length() {
return 2*(l+h);
}
double area() {
return l*h;
}
}
class Cubic extends Rect{
public Cubic(double l,double h,double z) {
super(l, h, z);
}
double s() {
return 2*(l*h+l*z+h*z);
}
double v() {
return l*h*z;
}
}
class Pyramid extends Rect{
public Pyramid(double l,double h,double z) {
super(l, h, z);
}
double s() {
double x=Math.sqrt(z*z+l*l/4);
double y=Math.sqrt(z*z+h*h/4);
double sum=x*h+y*l+l*h;
return sum;
}
double v() {
return l*h*z/3;
}
}
public class Main{
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
while(sc.hasNext()) {
double l=sc.nextDouble();
double h=sc.nextDouble();
double z=sc.nextDouble();
if(l>0&&h>0&&z>0) {
Cubic cu=new Cubic(l, h, z);
double s1=cu.s();
double v1=cu.v();
System.out.printf("%.2f %.2f ",s1,v1);
Pyramid py=new Pyramid(l, h, z);
double s2=py.s();
double v2=py.v();
System.out.printf("%.2f %.2f\n",s2,v2);
}
else
System.out.println("0.00 0.00 0.00 0.00");
}
sc.close();
}
}