#include <stdio.h>
#include <string.h>
int main()
{
char arr[100], sign[10] = {0};
char* p;
double num[10] = {0};
int i=0,j=0,k=0,cnt=0;
double total=0,sum=0;
for (p
= arr
; p
<= arr
+ strlen(arr
); ++p
) {
if (*p == '*' || *p == '/' || *p == '+' || *p == '-')
{
num[i] = sum;
sign[i] = *p;
sum = 0;
++i;
}
if (*p >= '0' && *p <= '9')
{
sum *= 10;
sum += *p - '0';
if (p
== arr
+ strlen(arr
) - 1) {
num[i] = sum;
}
}
}
while(j<i)
{
if (sign[j] == '*' || sign[j] == '/')
{
if (sign[j] == '*')
total = num[j] * num[j + 1];
if (sign[j] == '/')
total = num[j] / num[j + 1];
num[j] = total;
for (k = j + 1; k <= i; ++k)
num[k] = num[k + 1];
for (k = j; k < i; ++k)
sign[k] = sign[k + 1];
++cnt;
j = 0;
}
else
++j;
}
j = 0;
while(i-cnt!=0)
{
if (sign[j] == '+')
total = num[j] + num[j + 1];
if (sign[j] == '-')
total = num[j] - num[j + 1];
num[j] = total;
for (k = j + 1; k <= i - cnt; ++k)
num[k] = num[k + 1];
for (k = j; k < i - cnt; ++k)
sign[k] = sign[k + 1];
++cnt;
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdHJpbmcuaD4KCmludCBtYWluKCkKewogICAgY2hhciBhcnJbMTAwXSwgc2lnblsxMF0gPSB7MH07CiAgICBjaGFyKiBwOwogICAgZG91YmxlIG51bVsxMF0gPSB7MH07CiAgICBpbnQgaT0wLGo9MCxrPTAsY250PTA7CiAgICBkb3VibGUgdG90YWw9MCxzdW09MDsKICAgIGdldHMoYXJyKTsKICAgIGZvciAocCA9IGFycjsgcCA8PSBhcnIgKyBzdHJsZW4oYXJyKTsgKytwKQogICAgewogICAgICAgIGlmICgqcCA9PSAnKicgfHwgKnAgPT0gJy8nIHx8ICpwID09ICcrJyB8fCAqcCA9PSAnLScpCiAgICAgICAgewogICAgICAgICAgICAKICAgICAgICAgICAgbnVtW2ldID0gc3VtOwogICAgICAgICAgICBzaWduW2ldID0gKnA7CiAgICAgICAgICAgIHN1bSA9IDA7CiAgICAgICAgICAgICsraTsKICAgICAgICB9CiAgICAgICAKICAgICAgICBpZiAoKnAgPj0gJzAnICYmICpwIDw9ICc5JykKICAgICAgICB7CiAgICAgICAgICAgIHN1bSAqPSAxMDsKICAgICAgICAgICAgc3VtICs9ICpwIC0gJzAnOwogICAgICAgICAgICBpZiAocCA9PSBhcnIgKyBzdHJsZW4oYXJyKSAtIDEpCiAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICBudW1baV0gPSBzdW07CiAgICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgIAoKICAgIH0KICAgIHdoaWxlKGo8aSkKICAgIHsKICAgICAgICBpZiAoc2lnbltqXSA9PSAnKicgfHwgc2lnbltqXSA9PSAnLycpCiAgICAgICAgewogICAgICAgICAgICBpZiAoc2lnbltqXSA9PSAnKicpCiAgICAgICAgICAgICAgICB0b3RhbCA9IG51bVtqXSAqIG51bVtqICsgMV07CiAgICAgICAgICAgIGlmIChzaWduW2pdID09ICcvJykKICAgICAgICAgICAgICAgIHRvdGFsID0gbnVtW2pdIC8gbnVtW2ogKyAxXTsKICAgICAgICAgICAgbnVtW2pdID0gdG90YWw7CiAgICAgICAgICAgIGZvciAoayA9IGogKyAxOyBrIDw9IGk7ICsraykKICAgICAgICAgICAgICAgIG51bVtrXSA9IG51bVtrICsgMV07CiAgICAgICAgICAgIGZvciAoayA9IGo7IGsgPCBpOyArK2spCiAgICAgICAgICAgICAgICBzaWduW2tdID0gc2lnbltrICsgMV07CiAgICAgICAgICAgICsrY250OwogICAgICAgICAgICBqID0gMDsKICAgICAgICB9CiAgICAgICAgZWxzZQogICAgICAgICAgICArK2o7CiAgICB9CiAgICBqID0gMDsKICAgIHdoaWxlKGktY250IT0wKQogICAgewogICAgICAgIGlmIChzaWduW2pdID09ICcrJykKICAgICAgICAgICAgdG90YWwgPSBudW1bal0gKyBudW1baiArIDFdOwogICAgICAgIGlmIChzaWduW2pdID09ICctJykKICAgICAgICAgICAgdG90YWwgPSBudW1bal0gLSBudW1baiArIDFdOwogICAgICAgIG51bVtqXSA9IHRvdGFsOwogICAgICAgIGZvciAoayA9IGogKyAxOyBrIDw9IGkgLSBjbnQ7ICsraykKICAgICAgICAgICAgbnVtW2tdID0gbnVtW2sgKyAxXTsKICAgICAgICBmb3IgKGsgPSBqOyBrIDwgaSAtIGNudDsgKytrKQogICAgICAgICAgICBzaWduW2tdID0gc2lnbltrICsgMV07CiAgICAgICAgKytjbnQ7CiAgICB9CiAgICBwcmludGYoIiVsZiIsIG51bVswXSk7CiAgICByZXR1cm4gMDsKfQo=