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

编程题 7-12 两个数的简单计算器【PAT】

文章目录

  • 题目
    • 输入格式
    • 输出格式
    • 输入样例1
    • 输出样例1
    • 输入样例2
    • 输出样例2
  • 题解
    • 解题思路
    • 完整代码

编程练习题目集目录

题目

  要求编写一个简单计算器程序,可根据输入的运算符,对 2 2 2 个整数进行加、减、乘、除或求余运算。题目保证输入和输出均不超过整型范围。

输入格式

  输入在一行中依次输入操作数 1 1 1、运算符、操作数 2 2 2,其间以 1 1 1 个空格分隔。操作数的数据类型为整型,且保证除法和求余的分母非零。

输出格式

  当运算符为 + 、 − 、 ∗ 、 / 、 +、-、*、/、% +/ 时,在一行输出相应的运算结果。若输入是非法符号(即除了加、减、乘、除和求余五种运算符以外的其他符号)则输出 E R R O R ERROR ERROR

输入样例1

-7 / 2

输出样例1

-3

输入样例2

3 & 6

输出样例2

ERROR

题解

解题思路

  首先输入操作数 1 1 1、运算符、操作数 2 2 2,然后根据输入的字符(计算符号)判断,要进行何种运算,使用 s w i t c h switch switch 循环配合 b r e a k break break 语句,将对应的输入计算出来,输出即可。
  注:非法符号、被除数为 0 0 0,被取余数为 0 0 0 皆为 E R R O R ERROR ERROR

完整代码

#include<iostream>
using namespace std;int main(void)
{int x, y;char c;cout << "请输入 操作数1、运算符、操作数2:";       // 提交时注释此行cin >> x >> c >> y;switch (c){case '+': cout << x + y << endl;        // 加法计算break;case '-': cout << x - y << endl;        // 减法计算break;case '*': cout << x * y << endl;        // 乘法计算break;case '/':                               // 除法计算if (x != 0){cout << x / y << endl;break;}else                                // 被除数为 0,报错{cout << "ERROR" << endl;break;}case '%':                               // 取余计算if (x != 0){cout << x % y << endl;break;}else                               // 被取余数为 0,报错{cout << "ERROR" << endl;break;}default: cout << "ERROR" << endl;       // 其它符号,报错break;}return 0;
}

相关文章:

  • Linux:磁盘管理
  • ps aux | grep smart_webrtc这条指令代表什么意思
  • SQLite3模块使用详解
  • 【Android 14源码分析】Activity启动流程-1
  • 大数据复习知识点5
  • linux服务器部署filebeat
  • [Everything] 文件搜索工具的下载及详细安装使用过程(附有下载文件)
  • Hadoop三大组件之HDFS(一)
  • 在树莓派上部署开源监控系统 ZoneMinder
  • 基于php的幸运舞蹈课程工作室管理系统
  • 黑名单与ip禁令是同一个东西吗
  • Android开发中的ViewModel
  • SpringMVC4-SpringMVC获取请求参数
  • TI DSP TMS320F280025 Note14:模数转换器ADC原理分析与应用
  • MapReduce学习与理解
  • JS 中的深拷贝与浅拷贝
  • create-react-app项目添加less配置
  • docker python 配置
  • Git初体验
  • JavaScript异步流程控制的前世今生
  • Java新版本的开发已正式进入轨道,版本号18.3
  • python学习笔记-类对象的信息
  • Spring核心 Bean的高级装配
  • Webpack4 学习笔记 - 01:webpack的安装和简单配置
  • Yeoman_Bower_Grunt
  • 表单中readonly的input等标签,禁止光标进入(focus)的几种方式
  • 从0到1:PostCSS 插件开发最佳实践
  • 高程读书笔记 第六章 面向对象程序设计
  • 高性能JavaScript阅读简记(三)
  • 将 Measurements 和 Units 应用到物理学
  • 聚类分析——Kmeans
  • 使用阿里云发布分布式网站,开发时候应该注意什么?
  • 微信开放平台全网发布【失败】的几点排查方法
  • 学习Vue.js的五个小例子
  • 一个项目push到多个远程Git仓库
  • 主流的CSS水平和垂直居中技术大全
  • puppet连载22:define用法
  • 容器镜像
  • 曾刷新两项世界纪录,腾讯优图人脸检测算法 DSFD 正式开源 ...
  • !!Dom4j 学习笔记
  • # Redis 入门到精通(一)数据类型(4)
  • # 数据结构
  • ### RabbitMQ五种工作模式:
  • #QT(QCharts绘制曲线)
  • #微信小程序:微信小程序常见的配置传值
  • (2024)docker-compose实战 (9)部署多项目环境(LAMP+react+vue+redis+mysql+nginx)
  • (27)4.8 习题课
  • (31)对象的克隆
  • (33)STM32——485实验笔记
  • (CPU/GPU)粒子继承贴图颜色发射
  • (delphi11最新学习资料) Object Pascal 学习笔记---第13章第1节 (全局数据、栈和堆)
  • (js)循环条件满足时终止循环
  • (M)unity2D敌人的创建、人物属性设置,遇敌掉血
  • (附源码)spring boot基于Java的电影院售票与管理系统毕业设计 011449
  • (附源码)springboot助农电商系统 毕业设计 081919