#include <stdio.h>

void g(double x)
{
  int c = 0, i;

  if (x < 0) {
    putchar('-');
    g(-x);
    return;
  }
  while (x < 1) {
    --c;
    x *= 10;
  }
  while (x >= 10) {
    ++c;
    x /= 10;
  }
  putchar(x + '0');
  putchar('.');
  x -= (int)x;
  x *= 10;
  for (i = 0; i < 6; ++i) {
    putchar(x + '0');
    x -= (int)x;
    x *= 10;
  }
  putchar('e');
  if (c < 0) {
    putchar('-');
    c *= -1;
  }
  putchar(c + '0');
  putchar('\n');
  return;

}

int main()
{
  double f = 271.8281828;
  g(f);
  f /= 10000;
  g(f);
  f *= -1;
  g(f);
  return 0;
}
