#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e6 + 20;
const int inf = 0x3f3f3f3f;
const long long mod = 1e9 + 7;
map<char, char> a;
char s[maxn];
int main() {
  cin >> s;
  int kt = -1;
  int k1 = -1;
  int n = strlen(s) - 1;
  for (int i = (0); i <= (n - 1); i++) {
    if (s[i] == '.') {
      kt = i;
      break;
    }
  }
  if (kt != -1)
    while (s[n] == '0') n--;
  int t = 0;
  while (s[t] == '0') t++;
  if (s[t] == '.') kt = t, s[t] = '0';
  while (s[t] == '0') t++;
  for (int i = (t); i <= (n); i++) {
    if (s[i] == '.' && kt == -1) kt = i;
    if (s[i] - '0' >= 0 && s[i] - '0' <= 9 && k1 == -1) k1 = i;
  }
  if (kt == -1) n++, kt = n, s[n] = '.';
  if (s[n] == '.') {
    s[n] = '0';
    while (s[n] == '0') n--;
  }
  printf("%c", s[k1]);
  if (k1 < n) {
    printf(".");
    for (int i = (k1 + 1); i <= (n); i++)
      if (s[i] != '.') printf("%c", s[i]);
  }
  if (kt != k1 + 1) {
    printf("E");
    if (kt < k1)
      printf("%d", kt - k1);
    else
      printf("%d", kt - k1 - 1);
  }
  return 0;
}
