#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)
{
sp = 0;
reset();
while (1) {
int command;
double basyo1, basyo2, hako;
if (scanf("%d", &command
) != 1) break;
switch (command) {
case 1:
basyo1 = pop();
basyo2 = pop();
push(basyo2 + basyo1);
break;
case 2:
basyo1 = pop();
basyo2 = pop();
push(basyo2 - basyo1);
break;
case 3:
basyo1 = pop();
basyo2 = pop();
push(basyo2 * basyo1);
break;
case 4:
basyo1 = pop();
basyo2 = pop();
push(basyo2 / basyo1);
break;
case 5:
if (scanf("%lf", &hako
) == 1) { push(hako);
}
break;
case 9:
answer();
return 0;
default:
break;
}
}
return 0;
}
void push(double value)
{
if (sp >= SIZE) {
printf("スタックが満杯で入りませんでした。\n"); } else {
stack[sp++] = value;
}
}
double pop(void)//
{
if (sp <= 0) {
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 (sp > 0) {
printf("answer:%f\n", stack
[sp
- 1]); } else {
}
}
void reset(void){
while(!isEmpty()){
pop();
}
}
I2luY2x1ZGU8c3RkaW8uaD4KCiNkZWZpbmUgU0laRSAxMApkb3VibGUgc3RhY2tbU0laRV07CmludCBzcDsKCnZvaWQgcHVzaChkb3VibGUgdmFsdWUpOwpkb3VibGUgcG9wKHZvaWQpOwppbnQgaXNGdWxsKHZvaWQpOwppbnQgaXNFbXB0eSh2b2lkKTsKdm9pZCBhbnN3ZXIodm9pZCk7CnZvaWQgcmVzZXQodm9pZCk7CgppbnQgbWFpbih2b2lkKQp7CiAgICBzcCA9IDA7CiAgICByZXNldCgpOwoKICAgIHdoaWxlICgxKSB7CiAgICAgICAgaW50IGNvbW1hbmQ7CiAgICAgICAgZG91YmxlIGJhc3lvMSwgYmFzeW8yLCBoYWtvOwogICAgICAgIGlmIChzY2FuZigiJWQiLCAmY29tbWFuZCkgIT0gMSkgYnJlYWs7CgogICAgICAgIHN3aXRjaCAoY29tbWFuZCkgewogICAgICAgICAgICBjYXNlIDE6CiAgICAgICAgICAgICAgICBiYXN5bzEgPSBwb3AoKTsKICAgICAgICAgICAgICAgIGJhc3lvMiA9IHBvcCgpOwogICAgICAgICAgICAgICAgcHVzaChiYXN5bzIgKyBiYXN5bzEpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgMjoKICAgICAgICAgICAgICAgIGJhc3lvMSA9IHBvcCgpOwogICAgICAgICAgICAgICAgYmFzeW8yID0gcG9wKCk7CiAgICAgICAgICAgICAgICBwdXNoKGJhc3lvMiAtIGJhc3lvMSk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgICAgYmFzeW8xID0gcG9wKCk7CiAgICAgICAgICAgICAgICBiYXN5bzIgPSBwb3AoKTsKICAgICAgICAgICAgICAgIHB1c2goYmFzeW8yICogYmFzeW8xKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgICBiYXN5bzEgPSBwb3AoKTsKICAgICAgICAgICAgICAgIGJhc3lvMiA9IHBvcCgpOwogICAgICAgICAgICAgICAgcHVzaChiYXN5bzIgLyBiYXN5bzEpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICAgIGlmIChzY2FuZigiJWxmIiwgJmhha28pID09IDEpIHsKICAgICAgICAgICAgICAgICAgICBwdXNoKGhha28pOwogICAgICAgIHByaW50ZigiZGF0YTolZlxuIiwgaGFrbyk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA5OgogICAgICAgICAgICAgICAgYW5zd2VyKCk7CiAgICAgICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH0KICAgIHJldHVybiAwOwp9CgoKdm9pZCBwdXNoKGRvdWJsZSB2YWx1ZSkKewogICAgaWYgKHNwID49IFNJWkUpIHsKICAgICAgICBwcmludGYoIuOCueOCv+ODg+OCr+OBjOa6gOadr+OBp+WFpeOCiuOBvuOBm+OCk+OBp+OBl+OBn+OAglxuIik7CiAgICB9IGVsc2UgewogICAgICAgIHN0YWNrW3NwKytdID0gdmFsdWU7CiAgICB9Cn0KCgpkb3VibGUgcG9wKHZvaWQpLy8gCnsKICAgIGlmIChzcCA8PSAwKSB7CiAgICAgICAgcHJpbnRmKCLjgrnjgr/jg4Pjgq/jgYznqbrjgaflj5bjgorlh7rjgZvjgb7jgZvjgpPjgafjgZfjgZ/jgIJcbiIpOwogICAgICAgIHJldHVybiAwOwogICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gc3RhY2tbLS1zcF07CiAgICB9Cn0KCgppbnQgaXNGdWxsKHZvaWQpCnsKICAgIGlmIChzcCA+PSBTSVpFKSByZXR1cm4gMTsKICAgIGVsc2UgcmV0dXJuIDA7Cn0KCgppbnQgaXNFbXB0eSh2b2lkKQp7CiAgICBpZiAoc3AgPD0gMCkgcmV0dXJuIDE7CiAgICBlbHNlIHJldHVybiAwOwp9CgoKdm9pZCBhbnN3ZXIodm9pZCkKewogICAgaWYgKHNwID4gMCkgewogICAgICAgIHByaW50ZigiYW5zd2VyOiVmXG4iLCBzdGFja1tzcCAtIDFdKTsKICAgIH0gZWxzZSB7CiAgICAgICAgcHJpbnRmKCLjgrnjgr/jg4Pjgq/jgavopoHntKDjgYzjgYLjgorjgb7jgZvjgpPjgIJcbiIpOwogICAgfQp9CgoKdm9pZCByZXNldCh2b2lkKXsKICAgIHdoaWxlKCFpc0VtcHR5KCkpewogICAgICAgIHBvcCgpOwoJfQp9