砰!_os[什么平台坏了]

}//将运算结果压入操作数堆栈案例&quot://当前操作员的优先级小于顶层操作员的优先级if(string[I]==&#039...

Bitget下载

注册下载Bitget下载,邀请好友,即有机会赢取 3,000 USDT

APP下载   官网注册

砰!_os可能是相关行业的人应该注意的知识。这里就详细介绍一下什么是平台断背,并拓展一些相关知识与大家分享,希望对你有所帮助!

POP有很多解释:

1。POP的全称是邮局协议,用于接收电子邮件。该协议主要用于支持使用客户端在服务器上远程管理电子邮件。

2。所谓POP(生产点)终端是指在生产过程中处理信息的终端。

3。汇编语言指令。

4。POP是英文probabilityofprecision的缩写,意思是一定时间内一定区域的降水概率。这里说的降水量一般在0.2mm以上

5。在计算机网络中Pop代表入口点(pop),位于网络企业边缘之外,是接入企业内部网络的入口点。外界提供的服务通过POP进入,包括互联网接入、广域连接和电话服务(PSTN)。

6、指海报、吊牌等。

扩展信息:

商业中的pop:

原本是指商业销售中的一种店头促销工具。其种类不限,但主要在店内陈列。如吊牌、海报、小贴纸、纸架、展示架、纸堆、大招牌、实物模型、旗帜等。都在POP的范围内。它的主要商业用途是刺激和引导消费,活跃商店的气氛。

POP常用于短期推广。其形式包括户外招牌、展板、橱窗海报、店内桌子、价目表、旗帜甚至立体卡通模型,夸张幽默,色彩强烈,能有效吸引顾客';观点,激发他们的购买欲望。作为一种低成本、高效率的广告方式,它得到了广泛的应用。

POP的制作形式有彩印、印刷和手绘。随着计算机软件技术的发展,它在艺术设计中的应用更具吸引力和效率,甚至可以将手绘艺术字形的涂鸦效果模仿得淋漓尽致,并且可以从数码相机连接。,扫描仪';sLOGO图片等资料。特别适合快速、高效、低成本的制作POP需求量大的卖点。

参考:百度百科-pop

刚好有,所以我';我会给你寄一个(如果它';it's建议不要用)

#包含ostream

#包含stdlib。h

使用命名空间标准

constintmaxsize=100;//用于将表达式的最大长度限制为100个字符

voidwelcome();//欢迎模块

char*input();//Inputmodule

Booleancheck(Charstring[]);//Checkthemodule

charcompare(char,char);//其中一个操作模块用于比较操作员优先级

doublestepclaculate(双a,charb,双c);//运算模块之一,用于单个加减乘除

doublefinalcalculate(charstring[]);//总运算模块用于计算输入表达式结果

charoutput(doubleanswer);

structureosstack{//operatorstackdefinition

characterstack[maxsize];

inttop;

};

结构nsstack{//操作数栈定义

双栈[maxsize];

inttop;

};

堆栈中的模板类型名称T0void(T0s){//栈的初始化模板

s.top=-1;

}

模板typenameT1,typenameT2voidpush(T1s,T2x){//压栈模板

if(s.top==maxsize-1)

cout"溢出"

else{

s.top;

s.stack[s.top]=x;

}

}

模板类型名称T4voidpop(T4s){//出栈模板

if(s.top==-1)

cout"下溢"

else

s.top-;

}

模板类型名T3gettop(T3s){//取栈顶元素模板

if(s.top==-1){

cout"下溢"

返回0;

}

else

返回s.stack[s.top];

}

双答;

voidmain(){

char表达式[maxsize];

boollegal;

welcome();//执行欢迎函数

chargo_on=';y';//go_on用于判断是否继续执行程序,初始化为y,

while(go_on=';y'){//go_on为y,进入循环,一次循环后其值将输入到out函数中,用于决定是否继续输入其他表达式

legal=0;

while(!Legal){//legal为0,进入表达式输入和校验的循环;当legal为1,即输入的表达式合法时,它退出循环并执行计算

strcpy(expression,input());//使用字符数组表达式保存输入表达式

legal=check(表达式);//用legal表示输入的表达式是否合法,为1,否则为0

}

answer=finalcalculate(expression);//Assignthecalculationresulttotheanswer

go_on=output(answer);//Outputthecalculationresult

}

return;

}

/*下面是栈的初始化和基本操作的定义*/

//定义了栈的相关操作,定义了下面的函数

VoidWelcome(){

Cout";欢迎使用。这个程序是表达式求值的实现。可以输入包含四则运算(可以用括号)的表达式进行运算!“endl

}

char*input(){

charstring[maxsize];char*str

str=string;

cout";请输入要计算的表达式,然后按';输入';确认"endl

CIN.getline(string,maxsize);//通过键盘输入表达式。,不超过100个字符

返回字符串;

}

boolcheck(charstring[]){

intecode;//错误代码,用于指示错误类型,方便用户查看输入错误

intk=0,j=0;//用来记录括号的个数,判断括号是否匹配。

boollegal=1;

for(intI=0;string[i]!='0;i){

if((string[0]-'0'0||string[0]-'9'0)(string[0]!='('){legal=0;ecode=1;Break;}//withnumbersand'('Exceptthebeginningofacharacter.,错误

if(合法(string[I])-';0'0||string[I]-';9'0)string[I]!=''string[i]!='-'string[i]!='*'string[i]!='/'string[i]!='('string[i]!=')'){

合法=0;ecode=2;打破;}//表达式包含非法字符,错误

if(string[I]=';(')k;

if(string[I]==';)')j;

}

if(合法j!=k){legal=0;ecode=3;}//表达式中括号不匹配,错误

elseif(合法(string[I-1]-';0'0||string[I-1]-';9'0)string[I-1]!=')'){legal=0;ecode=4;}//表达式末尾不正确

if(legal==0)cout";您输入的表达式不正确,请检查并重新输入!错误代码:"ecodeendl//提示表达式有错误并指明错误类型

返回合法;

}

/下面是运算模块

charcompare(charA,charB){//确定运算符A和B的优先级,返回一个字符常量""还有';='

intp,q;//p,q用来表示字符a和b的操作优先级

开关(a){

Case""p=0;Break;//Settings''Thepriorityis0

case'('case')'p=1;Break;//Settings'('优先级1的描述:实际优先级括号大于加减乘除,

case';案例';-'p=2;打破;//Set';','-'是2的优先级。这里,为了方便堆栈的操作,

case';*'案例';/'p=3;打破;//Set';*''/'优先级为3

}

开关(二){

案';'q=0;打破;

案例';('案例';)'q=1;打破;

case""case';-'q=2;打破;

case'*'case'/'q=3;Break;

}

if(pq)return"//ComparethepriorityofAandBthroughPandQ

if(pq)return";

if(p==q)返回'='

}

双步计算(doublex,chary,doublez){

开关(y){

case';'

返回zx;

破位;

案例';-'

返回z-x;

破位;

案例';*'

返回z*x;

破位;

案例';/'

if(x!=0){

返回z/x;

破位;

}

else

cout";除数为零,输入错误"endl//因为check函数不检查被除数是否为零,所以

默认:

运算时加return0;

}

}

doublefinalcalculate(charstring[]){

OSstackOS;//定义茶型栈变量os,用来存放操作符

nsstackns;//定义一个双栈变量ns,用来存放操作数

intI=0;

doublenum=0;//定义浮点数num保存临时结算结果

doublens1,ns2charop//定义浮点数ns1、ns2和字符OP。,分别作为基本运算中的操作数和运算符

char*p;//字符指针,用于在扫描时指向紧接在符号字符之后的数值字符,以便于将数值字符串转换为int类型

instack(OS);//初始化操作符栈

instack(ns);//初始化操作数堆栈

push(os,';');//会';'推送操作员堆栈

while(string[i]!='0'){//扫描输入的表达式,在扫描过程中针对各种情况进行适当的操作

while(string[i]!=''string[i]!='-'string[i]!='*'string[i]!='/'string[i]!='('string[i]!=')'){

p=string[I];//如果当前元素是number

num=atof(p);//将连续的数字字符转换成数字

Push(ns,num);//Presstheoperandstack

inparalleltobreak;}

为(I;string[I]=48string[I]=57;)我;//当前字符为数字字符时,跳过所有连续的数字字符;

'while(string[I]==';'||string[I]==';-'||string[I]==';*||string[I]=';/'||string[I]==';('||string[I]==';)'||string[I]==';'){//判断当前与入栈元素是否是运算符

开关(compare(string[I],gettop(OS))){//比较当前操作符和顶部操作符

的优先级。

案例"://当前操作员具有高优先级

if(string[I]==')'){I;打破;}//并且当前运算符优于';)'表示栈顶操作符是';'跳过,我递增,扫描下一个字符

else{push(os,string[I]);我;打破;}//当前运算符不是';)'并且优先级高。它被放入堆栈,I递增。扫描下一个字符

案例';='//当前操作员和顶层操作员具有相同的优先级

if(string[I]==';('){push(os,string[I]);我;打破;}//如果当前操作符是';('堆栈一下,我会增加,扫描下一个字符

elseif(string[I]==')'){pop(OS);我;打破;}//如果当前操作符是';)'意味着栈顶操作符是';('会弹出我,扫描下一个字符

else{NS1=gettop(ns);//如果当前运算符是加减乘除,则执行一个基本运算

pop(ns);//取操作数堆栈顶部的两个元素

NS2=gettop(ns);//执行基本运算的操作数,并将这两个元素推出堆栈

pop(ns);

op=gettop(OS);//取运算操作符栈的顶层元素作为基本运算的操作符,

pop(OS);//并使其离开堆栈

num=stepcalculate(ns1,op,NS2);

推送(ns,num);打破;}//将运算结果压入操作数堆栈

案例"://当前操作员的优先级小于顶层操作员的优先级

if(string[I]==';('){push(os,string[I]);我;打破;}//如果当前操作符是';('它应该被放入堆栈,因为它有更高的实际优先级

else{NS1=gettop(ns);//如果是其他,会执行一个基本操作

pop(ns);//取操作数堆栈顶部的两个元素

NS2=gettop(ns);//执行基本运算的操作数,并将这两个元素推出堆栈

pop(ns);

op=gettop(OS);//取运算操作符栈的顶层元素作为基本运算的操作符,

pop(OS);//并使其离开堆栈

num=stepcalculate(ns1,op,NS2);

Push(ns,num);Break;}//Presstheoperationresultintotheoperandstack

}charx=gettop(OS);

}//表达式已被扫描;

while(ns.top!=0){//如果表达式扫描后操作数栈顶地址不为零。,说明计算还没有结束。此时,运算符堆栈中元素的优先级从上到下递减。

NS1=gettop(ns);//循环执行基本操作,直到操作数堆栈的顶部地址不为零。操作数来自操作数栈

pop(ns)的前两个元素;//取出后,从堆栈中取出

NS2=gettop(ns);

pop(ns);

op=gettop(OS);//取运算符为运算符栈顶元素

pop(OS);//取运算符后出栈

num=stepcalculate(NS1,op,NS2);

推送(ns,num);}//将运算结果压入操作数栈

返回gettop(ns);//计算后返回最终结果

}

字符输出(双答){

chargo_on;

cout";计算结果为:"answerendl

cout";按下';y'键继续,按其他键退出程序,然后按';输入';确认"endl//一次操作完成

cingo_on;

returngo_on;//赋一个值给go_on,选择是否计算其他表达式

}

直接在个人中心设置,而且这个账号和密码基本都是系统提供的。,你可以直接看一下说明书就行了。

砰!_os是很多人头疼的问题,尤其是在认识和现实的冲突中。什么平台坏了也面临类似的问题。关注我们,为您服务,是我们的荣幸!

上一篇: 买卖虚拟货币违法吗6
下一篇: 面试说福利发的虚拟货币
《砰!_os[什么平台坏了]》文档下载: PDF DOC TXT

猜你喜欢