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

题单:表达式求值1

题目描述

给定一个只包含 “加法” 和 “乘法” 的算术表达式,请你编程计算表达式的值。

输入格式

输入仅有一行,为需要计算的表达式,表达式中只包含数字、加法运算符 + 和乘法运算符 *,且没有括号。

所有参与运算的数字不超过 10001000 个,且均为 10001000 以内的整数,并且保证最终计算结果不超过 int 范围。

输出格式

输出只有一行,包含一个整数,表示这个表达式的值。

样例 #1

样例输入 #1

1+1*3+4+5*2

样例输出 #1

18

样例输入 #2

111+222*2+333+50*2+100

样例输出 #2

1088

 

题目要求计算一个仅包含加法和乘法的算术表达式的值。输入为一行的表达式,包含数字、加号(+)和乘号(),且没有括号。所有数字为1000以内的整数,表达式长度不超过1000个字符,最终结果在int范围内。输出为表达式的计算结果。例如,输入“1+13+4+52”输出18,输入“111+2222+333+50*2+100”输出1088。解题时需注意运算符优先级,先计算乘法再计算加法。

 

#include<bits/stdc++.h>
using namespace std; 
int main(){stack<int>stk;int x;int sum=0;char op;cin>>x;stk.push(x);while(cin>>op>>x){if(op=='+'){stk.push(x);}else if(op=='*'){x=stk.top()*x;stk.pop();stk.push(x);}}while(!stk.empty()){sum+=stk.top();stk.pop();}cout<<sum;return 0;
}

相关文章:

  • 什么是差分传输?
  • 信任的进阶:LEI与vLEI协同推进跨境支付体系变革
  • 深入理解构造函数,析构函数
  • C语言内存管理:深入理解堆与栈
  • OpenResty 深度解析:构建高性能 Web 服务的终极方案
  • SpringBootAdmin:全方位监控与管理SpringBoot应用
  • 第三十五节:特征检测与描述-ORB 特征
  • 【数据结构】_二叉树
  • LVGL(lv_dropdown下拉列表控件)
  • 系统架构设计(六):面向对象设计
  • 一周学会Pandas2 Python数据处理与分析-Pandas2数据添加修改删除操作
  • 数据结构与算法-线性表-循环链表(Circular Linked List)
  • PySide6 GUI 学习笔记——常用类及控件使用方法(常用类颜色常量QColorConstants)
  • 关于软件测试开发的一些有趣的知识
  • 使用Python和Selenium打造一个全网页截图工具
  • 使用Maven和Ant上传文件到Linux服务器
  • Linux面试题集合(1)
  • C语言输入函数对比解析
  • 线性回归策略
  • STM32实战指南:SG90舵机控制原理与代码详解
  • 信俗与共:清代新疆回疆儒释道庙宇的中华政教
  • 用贝多芬八首钢琴三重奏纪念风雨并肩20年
  • 以军证实空袭也门多个港口
  • 国寿资产获批参与第三批保险资金长期投资改革试点
  • 沃尔玛上财季净利下滑12%:关税带来成本压力,新财季价格涨幅将高于去年
  • 俄乌官员即将在土耳其会谈,外交部:支持俄乌开启直接对话