#include <bits/stdc++.h>
using namespace std;
int main() {
  string s;
  cin >> s;
  string base, ex;
  string delim = "e";
  string output = "";
  int start = 0U;
  int end = s.find(delim);
  while (end != string::npos) {
    base = s.substr(start, end - start);
    start = end + delim.length();
    end = s.find(delim, start);
  }
  ex = s.substr(start, end);
  int exn = stoi(ex);
  int flag = 0;
  for (int i = 0; i < base.size(); i++) {
    if (exn <= 0) {
      if (flag == 1) {
        output += ".";
        flag = 0;
      }
      output += base[i];
      continue;
    }
    if (base[i] == '.') {
      flag = 1;
      continue;
    }
    output += base[i];
    if (flag == 1) {
      exn--;
    }
  }
  for (int i = 0; i < exn; i++) {
    output += "0";
  }
  string finaloutput;
  int lz = 0;
  for (int i = 0; i < output.size(); i++) {
    if (output[i] == '0') {
      lz++;
    } else {
      break;
    }
  }
  if (lz > 1) {
    output.erase(0, lz - 1);
  }
  if (output.find(".") != string::npos) {
    lz = 0;
    for (int i = output.size() - 1; i >= 0; i--) {
      if (output[i] == '0') {
        lz++;
      } else {
        break;
      }
    }
  }
  output.erase(output.size() - lz, lz);
  if (output[output.size() - 1] == '.') {
    output.erase(output.size() - 1, 1);
  }
  cout << output;
  return 0;
}
