#include <bits/stdc++.h>
using namespace std;
bool is_(char ch) {
return ch >= '0' && ch <= '9';
}
char char_;
inline int read() {
int s = 0, f = 1;
char ch = getchar();
while (!is_(ch)) {
if (ch == '-')
f = -1;
if (ch == '?')
return INT_MAX;
ch = getchar();
}
while (ch == ' ' || is_(ch)) {
if (ch != ' ')
s = s * 10 + ch - '0';
ch = getchar();
}
char_ = ch;
return s * f;
}
double count(int a, char ch, int b) {
switch (ch) {
case '+':
return a * 1.0 + b;
case '-':
return a * 1.0 - b;
case '*':
return a * 1.0 * b;
case '/':
return a * 1.0 / b;
}
}
bool check(char ch) {
return ch == '+' || ch == '*';
}
map<char, char>r;
void cxk() {
r['+'] = '-';
r['-'] = '+';
r['*'] = '/';
r['/'] = '*';
}
int main() {
int a, b, c;
char count_ch;
a = read();
count_ch = char_;
b = read();
c = read();
double ans;
if (c == INT_MAX)
ans = count(a, count_ch, b);
cxk();
if (a == INT_MAX)
if (check(count_ch))
ans = count(c, r[count_ch], b);
else
ans = count(b, r[count_ch], c);
if (b == INT_MAX)
if (check(count_ch))
ans = count(c, r[count_ch], a);
else
ans = count(a, count_ch, c);
printf("%.2f", ans);
return 0;
}