#include //#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //using namespace atcoder; using namespace std; using ll = long long; #define all(A) A.begin(),A.end() using vll = vector; #define rep(i, n) for (long long i = 0; i < (long long)(n); i++) using Graph = vector>>>; ll gcd(ll(a), ll(b)) { ll c = a; while (a % b != 0) { c = a % b; a = b; b = c; } return b; } int main() { string G; cin >> G; ll B = 1; ll S = 0; bool C = false; rep(i, G.size()) { if (G[i] != '.') { S += G[i] - '0'; S *= 10; if (C)B *= 10; } else { C = true; } } S /= 10; cout << S/gcd(S,B) << "/" << B / gcd(S, B) << endl; }