#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;

double Heron(double a, double b, double c){
  double s = (a+b+c)/2;
  return sqrt(s*(s-a)*(s-b)*(s-c));
}

int main(){
  double a, l, x;
  while(cin >> a >> l >> x){
    double ABC = Heron(a, l, l);
    double ADC = Heron(l, (l+x)/2, (l+x)/2);
    cout << fixed << setprecision(10) << ABC+ADC*2 << endl;
  }
  return 0;
}