#include <bits/stdc++.h>
using namespace std;
int main() {
  int a, l, x, i = 0;
  double M[1000], c, d, e, f;
  while (scanf("%d%d%d", &a, &l, &x) != EOF) {
    c = (double)((2 * x * l) + (x * x)) / 4;
    e = l * l - (double)(a * a) / 4;
    d = sqrt(c);
    f = sqrt(e);
    M[i] = ((double)a / 2) * f + l * d;
    i++;
  }
  for (int j = 0; j < i; j++) {
    printf("%.10f\n", M[j]);
  }
  return 0;
}
