#include <iostream>
using namespace std;
char znak;
signed int a,b;
signed int dodawanie(signed int a, signed int b);
signed int odejmowanie(signed int a, signed int b);
signed int mnozenie(signed int a, signed int b);
signed int dzielenie(signed int a, signed int b);
signed int reszta_z_dzielenia( signed int a, signed int b);
int main()
{
while(cin>>znak>>a>>b)
{
switch(znak)
{
case '+':
cout<<dodawanie(a, b)<<endl;
break;
case '-':
cout<<odejmowanie(a, b)<<endl;
break;
case '*':
cout<<mnozenie(a, b)<<endl;
break;
case '/':
cout<<dzielenie(a, b)<<endl;
break;
case '%':
cout<<reszta_z_dzielenia(a, b)<<endl;
break;
}
}
}
signed int dodawanie(signed int a, signed int b)
{
return a+b;
}
signed int odejmowanie(signed int a, signed int b)
{
return a-b;
}
signed int mnozenie(signed int a, signed int b)
{
return a*b;
}
signed int dzielenie(signed int a, signed int b)
{
return a/b;
}
signed int reszta_z_dzielenia(signed int a, signed int b)
{
return a%b;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNoYXIgem5hazsKc2lnbmVkIGludCBhLGI7CnNpZ25lZCBpbnQgZG9kYXdhbmllKHNpZ25lZCBpbnQgYSwgc2lnbmVkIGludCBiKTsKc2lnbmVkIGludCBvZGVqbW93YW5pZShzaWduZWQgaW50IGEsIHNpZ25lZCBpbnQgYik7CnNpZ25lZCBpbnQgbW5vemVuaWUoc2lnbmVkIGludCBhLCBzaWduZWQgaW50IGIpOwpzaWduZWQgaW50IGR6aWVsZW5pZShzaWduZWQgaW50IGEsIHNpZ25lZCBpbnQgYik7CnNpZ25lZCBpbnQgcmVzenRhX3pfZHppZWxlbmlhKCBzaWduZWQgaW50IGEsIHNpZ25lZCBpbnQgYik7CgppbnQgbWFpbigpCnsKICAgIHdoaWxlKGNpbj4+em5haz4+YT4+YikKICAgIHsKICAgIHN3aXRjaCh6bmFrKQogICAgewogICAgICAgIGNhc2UgJysnOgogICAgICAgICAgICBjb3V0PDxkb2Rhd2FuaWUoYSwgYik8PGVuZGw7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJy0nOgogICAgICAgICAgICBjb3V0PDxvZGVqbW93YW5pZShhLCBiKTw8ZW5kbDsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnKic6CiAgICAgICAgICAgIGNvdXQ8PG1ub3plbmllKGEsIGIpPDxlbmRsOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICcvJzoKICAgICAgICAgICAgY291dDw8ZHppZWxlbmllKGEsIGIpPDxlbmRsOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlICclJzoKICAgICAgICAgICAgY291dDw8cmVzenRhX3pfZHppZWxlbmlhKGEsIGIpPDxlbmRsOwogICAgICAgICAgICBicmVhazsKICAgIH0KICAgIH0KfQoKc2lnbmVkIGludCBkb2Rhd2FuaWUoc2lnbmVkIGludCBhLCBzaWduZWQgaW50IGIpCnsKICAgIHJldHVybiBhK2I7Cn0Kc2lnbmVkIGludCBvZGVqbW93YW5pZShzaWduZWQgaW50IGEsIHNpZ25lZCBpbnQgYikKewogICAgcmV0dXJuIGEtYjsKfQpzaWduZWQgaW50IG1ub3plbmllKHNpZ25lZCBpbnQgYSwgc2lnbmVkIGludCBiKQp7CiAgICByZXR1cm4gYSpiOwp9CnNpZ25lZCBpbnQgZHppZWxlbmllKHNpZ25lZCBpbnQgYSwgc2lnbmVkIGludCBiKQp7CiAgICByZXR1cm4gYS9iOwp9CnNpZ25lZCBpbnQgcmVzenRhX3pfZHppZWxlbmlhKHNpZ25lZCBpbnQgYSwgc2lnbmVkIGludCBiKQp7CiAgICByZXR1cm4gYSViOwp9