#include <bits/stdc++.h>
using namespace std;
void split(string str, char chr, vector<string> *res) {
  stringstream ss(str);
  string itm;
  while (getline(ss, itm, chr)) {
    (*res).push_back(itm);
  }
}
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() {
  cin.tie(0);
  ios::sync_with_stdio(false);
  int a, l, x;
  double area;
  while (cin >> a >> l >> x) {
    area =
        Heron(a, l, l) + Heron(l, (double)(l + x) / 2, (double)(l + x) / 2) * 2;
    cout << setprecision(8) << area << endl;
  }
  return 0;
}
