#include <bits/stdc++.h>
using namespace std;
long long n, l, k;
double v1, v2;
bool check(double time) {
  double t = ((double)l - v1 * time) / (v2 - v1);
  int grp = (n + k - 1) / k;
  double start = 0;
  double bus;
  for (int i = 1; i <= grp; i++) {
    if (i == 1) {
      double dis = start * v1 + t * v2;
      if (dis > l) return 0;
      start = t;
      bus = dis;
    } else {
      double child = start * v1;
      double t1 = (bus - child) / (v1 + v2);
      double dis = child + t * v2 + t1 * v1;
      if (dis > l) return 0;
      bus = dis;
      start += t1 + t;
    }
  }
  return true;
}
int main() {
  scanf("%lld", &n);
  scanf("%lld", &l);
  cin >> v1 >> v2;
  scanf("%lld", &k);
  double low = (double)l / v2;
  double high = (double)l / v1;
  while (1) {
    if (high - low < .0000001) break;
    double mid = (low + high) / 2.00;
    if (check(mid)) {
      high = mid - 0.0000001;
    } else {
      low = mid + 0.0000001;
    }
  }
  cout.precision(10);
  cout.setf(ios::fixed | ios::showpoint);
  cout << low << endl;
}
