#include <algorithm>
#include <cmath>
#include <cstdio>
#include <cstring>
#include <deque>
#include <iostream>
#include <map>
#include <queue>
#include <set>
#include <stack>
#include <string>
#include <utility>
#include <vector>
#define p(s) cout<<(s)<<endl
#define REP(i,n,N) for(int i=n;i<N;i++)
#define RREP(i,n,N) for(int i=N-1;i>=n;i--)
#define CK(n,a,b) ((a)<=(n)&&(n)<(b))
#define F first
#define S second
typedef long long ll;
using namespace std;
const ll mod = 1e9+7;

string s;
int main(){
    cin>>s;
    if(s[0]=='9'&&s[1]=='9'&&s[2]-'0'>4){
        cout<<"1.0*10^"<<s.size()<<endl;
    }else {
        cout << s[0] - '0' + (s[1]=='9'&&s[2]-'0'>4) << "." << (s[1] - '0' + (s[2] - '0' > 4)) % 10 << "*10^" << s.size() - 1 << endl;
    }
    return 0;
}