#include<iostream>
#include<iomanip>
#include<stack>
#include<string>
using namespace std;

int main()
{
    string str;
    stack<double> s;

    while( cin >> str )
    {
        if( str == "EOF" )
            break;
        int size = str.size();
        if( size != 1 )
        {
            double sum = 0, dig = 1;
            if( str[0] == '-' )         //マイナスの値の処理
            {
                for( int i = size - 1; i >= 1; i-- )
                {
                    sum += dig * ( str[i] - '0' );
                    dig *= 10;
                }
                s.push( -1 * sum );
            }
            else                        //通常の2ケタ以上の数字の処理
            {
                for( int i = size - 1; i >= 0; i-- )
                {
                    sum += dig * ( str[i] - '0' );
                    dig *= 10;
                }
                s.push(sum);
            }
        }
        else                            //計算処理
        {                               //48-57はASCII文字の0から9
            if( 48 <= str[0] && str[0] <= 57 )
                s.push(str[0]-'0');
            else
            {
                double a = s.top();
                s.pop();
                double b = s.top();
                s.pop();
                if( str[0] == '+' )
                    s.push( b + a );
                else if( str[0] == '-' )
                    s.push( b - a );
                else if( str[0] == '*' )
                    s.push( b * a );
                else if( str[0] == '/' )
                    s.push( b / a );
                else;
            }
        }
    }
    //計算結果をそのまま出すと、新しい結果から先に出力されるので、調整
    stack<double> res;
    while( s.empty() == false )
    {
        res.push(s.top());
        s.pop();
    }
    while( res.empty() == false )
    {
        cout << fixed << setprecision(8) << res.top() << endl;
        res.pop();
    }
    return 0;
}
