#include <stdio.h>

#define SIZE 10
double stack[SIZE];
int sp;

void push(double value);
double pop(void);
int isFull(void);
int isEmpty(void);
void answer(void);
void reset(void);

int main(void) {
    reset();

    while(1) {
        int resp;
        double data;
        scanf("%d", &resp);

        if(resp == 9) {
            break;
        }

        switch(resp) {
            case 1:
                push(pop() + pop());
                break;
            case 2: {
                double d2 = pop();
                double d1 = pop();
                push(d1 - d2);
                }
                break;
            case 3: {
                double d2 = pop();
                double d1 = pop();
                push(d1 * d2);
                }
                break;
            case 4: {
                double d2 = pop();
                double d1 = pop();
                push(d1 / d2);
                }
                break;
            case 5:
                scanf("%lf", &data);
                printf("data:%f\n", data);
                push(data);
                break;
        }
    }
    answer();
    return 0;
}

void push(double value) {
    if(isFull()) {
        printf("スタックが満杯で入りませんでした\n");
    } else {
        stack[sp++] = value;
    }
}

double pop(void) {
    if(isEmpty()) {
        printf("スタックが空で取り出せませんでした\n");
        return 0;
    } else {
        return stack[--sp];
    }
}

int isFull(void) {
    if(sp >= SIZE) {
        return 1;
    } else {
        return 0;
    }
}

int isEmpty(void) {
    if(sp <= 0) {
        return 1;
    } else {
        return 0;
    }
}

void answer(void) {
    if(!isEmpty()) {
        printf("answer:%f\n", pop());
    }
}

void reset(void) {
    sp = 0;
}