這些都是emmmm
給出乙個表示式,其中運算子僅包含+,-,*,/,^要求求出表示式的最終值資料可能會出現括號情況 還有可能出現多餘括號情況資料保證不會出現》maxlongint的資料。資料可能回出現負數情況
(2+2)^(1+1)
16真的是超級麻煩emmmm,今天考試的時候看了看接著就棄了。。。說實話這個真不應該棄掉,但是真的不會了w
需要開long long,不開的話炸了乙個點,真是麻煩
#include
#include
#include
#include
#include
#include
#include
using
namespace
std;
typedef
long
long ll;
char ch[10005];
ll num[10005], top1;
ll opt[10005], top2;
void get_num()
int main()
num[++top1] = x;
}if (ch[i] == '(')
if (ch[i] == '+')
if (ch[i] == '-')
num[++top1] = x;
}else
}if (ch[i] == '*')
if (ch[i] == '/')
if (ch[i] == '^')
if (ch[i] == ')')
}while(top2)
printf("%lld\n", num[top1]);
return
0;}
然後是std:
#include
#include
#include
using
namespace
std;
const
int maxn=100000+5;
typedef
long
long ll;
char opt[maxn],ch[maxn];
ll sta[maxn];
int tpo,tp,len;
ll pow(ll x,ll a)
inline
int prty(char c)//priority
}inline ll calc(ll b,char c,ll a)
}int main()
else
if(ch[i]==')')
--tpo;
}else
opt[++tpo]=ch[i];}}
printf("%lld",sta[1]);
fclose(stdin);
fclose(stdout);
return
0;}
運算表示式求值模板
表示式計算 使用方法 輸入合法的表示式,加減乘除,可以帶括號,用空格分開數字和符號,1為結束標誌,比如 2 5 3 1 注意 這是用來算具體答案的,不是轉化成字尾表示式輸出的,當然,思想是遞迴建立表示式樹,然後後序遍歷得逆波蘭式,然後用棧計算結果 模板 include include include...
表示式模板 C 學習
qt從4.6開始,引入了乙個qstringbuilder的內部類 這個類主要使用了乙個被稱為表示式模板 expression templates 的東西。表示式模板是由todd veldhuizen在1995年6月在一篇文章中給出的。表示式模板是一種c 模板元程式設計 template metapr...
JS數學表示式運算
在專案中經常碰到js精度問題,且常用到連續的運算 故寫了個簡單的數學表示式計算,僅支援 計算結果 math.express 3 1 2.3 6 3 5 1 1 1 2 1.9 math.express.add 1.2,3.33 4.53 math.express function 兩個浮點數求和 e...