#include#include#includechar expr100,stack100,output100;long double val100;int ss=0,os=0,vs=0;int top=-1;void brackets(){ int len=strlen(expr),i,b=0,j; for(i=0;i=’0’&&expri-1<='9')||expri-1=='.')) { for(j=len;j>i;j–) exprj=exprj-1; expri=’*’; len=strlen(expr); } else if(expri-1==’)’&&((expri>=’0’&&expri<='9')||expri=='.')) { for(j=len;j>i;j–) exprj=exprj-1; expri=’*’; len=strlen(expr); } } len=strlen(expr); for(i=len-1;i>=0;i–) expri+1=expri; expr0='(‘; exprlen+1=’)’;}void instack(){ int i,len=strlen(expr); short d=0; long double num; long double m,c; for(i=0;i=’0’&&expri<='9')||expri=='.') { if(d) { c=(long double)expri-48; num+=(c/m); m*=10; } else { if(expri=='.') { d=1; i++; continue; } num=num*10+expri-48; } i++; } outputos++=vs++; valvs-1=num; i--; } }}void eval(){ int i,j; long double c,n1,n2; top=-1; for(i=0;i