当前位置: 首页 > news >正文

NET网站开发工程师网站招聘免费静态网页源码

NET网站开发工程师网站招聘,免费静态网页源码,春雨直播免费视频,网站建设策划书(建设前的市场分析)描述 读入一个只包含 , -, *, / 的非负整数计算表达式#xff0c;计算该表达式的值。 输入描述#xff1a; 测试输入包含若干测试用例#xff0c;每个测试用例占一行#xff0c;每行不超过200个字符#xff0c;整数和运算符之间用一个空格分隔。没有非法表达式。当一行中…描述 读入一个只包含 , -, *, / 的非负整数计算表达式计算该表达式的值。 输入描述 测试输入包含若干测试用例每个测试用例占一行每行不超过200个字符整数和运算符之间用一个空格分隔。没有非法表达式。当一行中只有0时输入结束相应的结果不要输出。 输出描述 对每个测试用例输出1行即该表达式的值精确到小数点后2位。 样例输入 输入 1 2 4 2 * 5 - 7 / 11 0 样例输出 输出 3.00 13.36 思路 ①设立运算符和运算数两个栈,一个用来存储运算符另一个用来存储运算数。 ②在运算符栈中放置一个特殊运算符#,其优先级最低。 ③将表达式尾部添加一个特殊运算符$,其优先级次低。 ④从左至右依次遍历字符串若遍历到运算符则将其与运算符栈的栈顶元素进行比较若运算符栈的栈顶的优先级小于该运算符则将该运算符压入运算符栈若运算符栈的栈顶的优先级大于该运算符则弹出该栈顶运算符从运算数栈中依次弹出运算数完成弹出运算符对应的运算后再将该结果压入运算数栈。 ⑤若遍历到表达式中的运算数则直接压入运算数栈。 ⑥若运算符栈中仅剩两个特殊运算符#和$,则表达式运算结束此时运算数栈中唯一的数字就是表达式的值。 源代码 #includeiostream #includestack #includemap #includestring using namespace std;//例题5.6 KY129 简单计算器 //考虑到需要计算的数字可能不止一位就从检测到数字的索引开始一直到检测不到数字的索引这之间的就是一整个数字 double getNum(string str, int index) {double res 0;while (isdigit(str[index])) {res res * 10 str[index] - 0;index;}return res; }//对两个数字进行运算 double cal(double x, double y, char op) {if (op ) {return x y;}else if (op -) {return x - y;}else if (op *) {return x * y;}else if (op /) {return x / y;}return 0; }int main() {//存储多个运算符号的优先级mapchar, int maps { {#,0},{$,1},{-,2},{,2}, {/,3},{*,3} };string s;//因为需要运算的式子可能不止一条这里用while循环//因为输入的式子中可能包含多个空格直接用getline(cin, s)回去整行的字符串并赋值给swhile (getline(cin, s)) {if (s 0) { //结束条件break;}stackchar symbol; // 存储运算符的栈stackdouble number; // 存储操作数的栈int index 0; //对字符串遍历的索引symbol.push(#); //把#压入符号中优先级最低s s $; //先把$放到要处理的公式字符串的末尾优先级次低while (index s.size()) { //遍历公式中的每一个字符//获取该数字索引开始的整个数字并压入栈number中if (isdigit(s[index])) { number.push(getNum(s, index));}//遇到公式中的空格直接跳过else if (s[index] ) {index;}else {//若运算符栈的栈顶的优先级小于遍历遇到的当前的运算符则将该运算符压入运算符栈if (maps[s[index]] maps[symbol.top()]) {symbol.push(s[index]);index;}//否则弹出该栈顶运算符从运算数栈中依次弹出运算数完成弹出运算符对应的运算后再将该结果压入运算数栈。else {double x number.top();number.pop();double y number.top();number.pop();char op symbol.top();symbol.pop();number.push(cal(y, x, op));}}}//精确到小数点后2位printf(%.2f\n, number.top());}return 0; } 提交结果:
http://www.dnsts.com.cn/news/215778.html

相关文章:

  • 福建省建设执业注册资格管理中心网站湖北省级建设主管部门网站
  • 网站建设及推广人员自动建设网站系统
  • 中山市小榄新意网站设计有限公司怎么让自己的网站稍微变前面点
  • wordpress怎么做双语站怎么样才能搜索到自己做的网站
  • 手机端网站的区别南阳网站公司
  • 大连企业网站排名js跳转到别的网站
  • 广州建设监理协会网站怎么做免费的网站商城
  • 一个域名可以做中英文两个网站吗一天挣5000元的偏门路子
  • 网站建设项目报告网站排名优化软件哪家好
  • 购物网站开发案例教程企业做网站需要注意什么
  • 如今做哪个网站致富全屋设计装修效果图
  • 福建省建设监理公司网站wordpress 标签链接
  • 网站有哪些功能广州建设网站的公司简介
  • 网站 自定义表单营销型网站设计文章
  • 做网站课程报告有情怀的网站设计
  • 和镜像网站做友链网站制作的主要技术
  • 网站建设与维护管理实训报告十大软件下载大全免费
  • 做销售网站那家好北京注册公司要求
  • 虚拟主机专用控制面板文章优化关键词排名
  • 网站建设评审意见姐妹直播视频tv
  • 山东菏泽建设银行网站中信建设有限责任公司集采
  • 网站点击量设计ps做 网站教程
  • 沈阳网站设计定制网站建设济南兼职做网站
  • 建立网站怎么做甘孜州住房城乡建设局网站
  • 网站设计特别好的公司服装设计公司名称
  • 网站建设零金手指花总个人网站的制作实验报告
  • 南京网站运营建筑装饰工程
  • 不用代码可以做网站设计吗免费网站建设排名
  • 天津网站优化流程汽车门户网站源码
  • 在模板网站建站好吗建设部网站退休注册人员