#include<stdio.h>
#include<stdlib.h>

double ds[100];
int dsp=sizeof(ds)/sizeof(ds[0]);

void dpush(double v) { if(dsp>0) ds[--dsp]=v; }                                 double dpop(void) { return (dsp<sizeof(ds)/sizeof(ds[0])?ds[dsp++]:0.0); }

double RPN( const char * f )
{
    double v;
    for(;*f;f++) {
        switch(*f){
        case '+' : v=dpop(); dpush(dpop()+v); break ;
        case '-' : v=dpop(); dpush(dpop()-v); break ;
        case '*' : v=dpop(); dpush(dpop()*v); break ;
        case '/' : v=dpop(); dpush(dpop()/v); break ;
        default :
            dpush(atof(f)) ;
            for(;*f>='0'&&*f<='9';i++);
            i--;
            break ;
        }
        i++;
    }
    return dpop();
}
int main(void){
    char s[81];
    while(fgets(s,sizeof(s),stdin)){
        printf("%f\n",RPN(s));
    }
    return 0;
}