#include <bits/stdc++.h>
using namespace std;
int main() {
  long long k, d, t, r, tr, _2sr;
  double res = 0;
  cin >> k >> d >> t;
  r = ceil((double)k / d) * d - k;
  _2sr = 2 * k + r;
  tr = k + r;
  res += ((2 * t) / _2sr) * 2 * tr;
  if (((2 * t) % _2sr) <= 2 * k)
    res += (2 * t) % _2sr;
  else {
    res += 2 * k;
    res += ((2 * t) % _2sr - 2 * k) * 2;
  }
  printf("%.16f\n", res / 2.);
  return 0;
}
