uses crt;
var f,D:text; a,b,s,c:real;
begin
clrscr;
assign(f,'input.pas');reset(f);
assign(d,'output.pas');rewrite(d);
while not(eof(f)) do
begin
readln(f,a,b);
s:=a*b/2;
c:=sqrt(sqr(a)+sqr(b))+a+b;
writeln(d,s:0:2,' ',c:0:2);
end;
close(d);
close(F);
end.