#include using namespace std; #define rep(i, n) for(int i = 0; i < (n); ++i) #define eee(a) (cerr << (#a) << ": " << (a) << endl); using ll = long long; using pint = pair; using pll = pair; using mint = map; int dx[4] = {1, 0, -1, 0}; int dy[4] = {0, 1, 0, -1}; const char sp = ' '; const char cmm = ','; const int MOD = 1e9+7; const int INF = 1e9; const ll LINF = 1e18; ll mod(ll a, ll b){ return (a%b+b)%b; } ll gcd(ll a, ll b){ return b ? gcd(b, a%b) : a; } ll lcm(ll a, ll b){ return a*b/gcd(a, b); } void Yes(){ cout << "Yes" << endl; } void No(){ cout << "No" << endl; } void Judge(bool b){ b ? Yes() : No(); } void YES(){ cout << "YES" << endl; } void NO(){ cout << "NO" << endl; } void JUDGE(bool b){ b ? YES() : NO(); } ll powmod(ll b, ll e){ ll r = 1; while(e > 0) {if(e&1) r = (r%MOD)*(b%MOD)%MOD; b = (b%MOD)*(b%MOD)%MOD; e >>= 1;} return r; } double distance(ll x1, ll y1, ll x2, ll y2){ return sqrt((x1-x2)*(x1-x2) + (y1-y2)*(y1-y2)); } templatebool chmax(T &a, const T &b) { if(a < b) { a = b; return 1; } return 0; } templatebool chmin(T &a, const T &b) { if(b < a) { a = b; return 1; } return 0; } template void ppp(T n){ cout << n << endl; } template ostream& operator<<(ostream& s, const pair& p) { return s << "(" << p.first << ", " << p.second << ")"; } template ostream& operator<<(ostream& s, const vector& v) { int len = v.size(); s << '['; for(int i = 0; i < len; ++i) { s << v[i]; if(i < len-1) s << ", "; } s << ']'; return s; } struct aaa { aaa(){ cin.tie(0); ios::sync_with_stdio(0); cout<> a >> b; string s = div(a, b, 0); s.insert(s.begin()+1, '.'); cout << s << endl; return 0; }