C++怎样实现简单的计算器功能
发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,C++怎样实现简单的计算器功能,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。限制:1、只能使用分支语句与循环语句;2、不
千家信息网最后更新 2025年01月20日C++怎样实现简单的计算器功能
C++怎样实现简单的计算器功能,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
限制:
1、只能使用分支语句与循环语句;
2、不能使用数组和自定义函数;
(即把自己当作只学到分支语句和循环语句的初学者)
计算器要求:
1、可以进行简单的加、减、乘、除四则运算;
2、如出现多个运算符号,必须考虑先乘除后加减的运算顺序;
3、不需要括号运算符;
一个比较简单的程序,但加上了上述的限制后,让我耗费了很大的功夫。
源代码如下:
#includeusing namespace std;int main(){ //首先要声明变量: double a0,a1,a2;//为了处理多位小数的运算,这里使用浮点型; char ca1,ca2;//字符型用于储存运算符号; //先考虑简单的情况----输入一个数后直接输入等号并输出结果; cin>>a0>>ca1; if(ca1=='=') cout< >a1>>ca2; while(1)//此处进入第一个循环,用于处理仅有加减的运算; { if(ca1=='=') {cout< >a1>>ca2;break;//由于ca2赋给ca1的值不是等号,因此会继续循环,所以必须要更新a1与ca2的值; case '*': case '/': //如果第二个运算符是乘号或除号,则要进入第二个循环处理连乘或连除的问题; while(1) { //连乘或连除; switch(ca2) { //此处要对第三个变量进行赋值,并将a1与a2的乘除结果存入a1中; case '*':cin>>a2;a1=a1*a2;cin>>ca2;break; case '/':cin>>a2;a1=a1/a2;cin>>ca2; //还要对ca2的值进行更新,用于处理接下来运算; } if(ca2=='=')//若ca2的值变为等号; { switch(ca1) { //将之前乘除的结果a1与之前的a0进行加减运算,并将结果存入a0中; case '+': a0=a0+a1;break; case '-': a0=a0-a1;break; } ca1=ca2; break;//这也是跳出第二个循环的条件,且ca2为加号或减号时也要跳出循环; } if(ca2=='+'||ca2=='-') { switch(ca1) { case '+': a0=a0+a1;break; case '-': a0=a0-a1;break; } ca1=ca2;cin>>a1>>ca2; break; } } } } } return 0;}
注:
1、当ca2的值为加号或减号或等号时,就必须要出现ca2对ca1的赋值,不然没有办法处理接下来的运算或者跳出循环输出结果;
2、a0的作用是将加减的结果储存下来,而a1的作用是储存乘除的结果,考虑到运算顺序,因此最后的输出只能是a0;
运行结果:
用计算器验证一下结果:
结果正确!
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
运算
结果
循环
处理
乘除
等号
计算器
语句
输出
接下来
作用
减号
分支
加号
变量
符号
运算符
顺序
并将
帮助
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全的几种技术
华为和锐捷谁的网络安全做的好
企业微定位修改软件开发
金华市网络安全知识答案
计算机网络技术怎么工作的
怎样查看电脑数据库实例名
海康监控平台软件开发语言
松江区咨询软件开发专业服务
网络安全讲座的主要内容有哪些
用于存放数据库日志信息的扩展名
华为软件开发李丹
软件开发经验三年
软件开发前的原型设计案例
数据库系统中级
郑州软件开发排名
最新服务器cpu核数
软件开发口号 理念
网络安全手抄报内容简短
网络技术服务的资质
上海易联网络技术有限公司官网
本次网络安全培训
泉州银乾网络技术
杭州老乡网络技术有限公司
天津启睿创鸿网络技术有限公司
财税软件开发学习书本
网络安全意识电子政务
临终日记软件开发
音乐电影推荐大数据库
网络安全威胁共享平台
str 标准数据库