首页 > 1116.加减乘除

1116.加减乘除

题目描述:

根据输入的运算符对输入的整数进行简单的整数运算。

运算符只会是加+、减-、乘*、除/、求余%、阶乘!六个运算符之一。

输出运算的结果,如果出现除数为零,则输出“error”,如果求余运算的第二个运算数为0,也输出“error”。

输入:

输入为一行。先输入第一个整数,空格输入运算符,然后再空格输入第二个整数,回车结束本次输入。

如果运算符为阶乘!符号,则不输入第二个整数,直接回车结束本次输入。

输出:

可能有多组测试数据,对于每组数据,

输出一行。输出对输入的两个(或一个)数,根据输入的运算符计算的结果,或者“error”。

样例输入:
12 + 34
54 - 25
3 * 6
45 / 0
5 !
34 % 0
样例输出:
46
29
18
error
120
error
提示:

运算不会超出整型数据的范围。0!=1; 测试数据有多组。

来源:
2008年北京大学图形实验室计算机研究生机试真题
#include
#include
using namespace std;int fac(int x){if(x==0 || x==1) return 1;else return x*fac(x-1);
}int main(){int n,m;char p;while(cin>>n>>p){int num=0;int out=true;if(p=='!'){num=fac(n);}else if(p=='+'){cin>>m;num=n+m;}else if(p=='-'){cin>>m;num=n-m;}else if(p=='*'){cin>>m;num=n*m;}else if(p=='/' || p=='%'){cin>>m;if(m==0) out=false;else {if(p=='/'){num=n/m;}else num=n%m;}}if(out) cout<endl;else cout<<"error"<<endl;}return 0;
} 

 

转载于:https://www.cnblogs.com/bernieloveslife/p/9735019.html

更多相关:

  • CentOS7自带的git版本1.8.3.1,这个版本有点低了。于是决定折腾升级, 实操记录在此: 1、确认你的当前git版本 在终端输入: git --version   2、使用root账号 在终端终入: su root 然后输入root账号的密码,注意linux下输密码时界面是没有变化的   3、配置存储库 启用Wa...

  • 今天做TJU的OJ ,其中一道题是先读入一个字符串,再读入一个整数,循环往复,直到字符串是空,也就是说回车键结束循环。 但是cin对空格和回车都不敏感,都不影响继续读入数据,所以需要一种新的方式检测回车。 方法一:利用getchar()函数 1 //**************************将输入的单词逆序输出*****...

  • 1、调出命令窗口:开始---->运行---->cmd,或者是window+R组合键   2、输入命令:netstat -ano,列出所有端口的情况。在列表中我们观察被占用的端口,比如是4300,我们拿它来做实验。 3、查看被占用端口对应的PID,输入命令:netstat -aon|findstr "4300",回车,记下最后一位...

  • 关于这个问题其实我很早之前就研究过,只是一直都是弄一次就不管了,下次就忘记怎么弄了,又去查,现在就写个笔记吧。 win8/8.1 在开始的界面输入netplwiz,或者点击win+r打开运行,输入netplwiz,然后回车 会弹出这个框框 然后会然你输入密码,输入之后点击确定就可以了。   winXP/7: 这个系统有点不同 使用...

  • #include #include #include #include #include #include #include

  • 题目:表示数值的字符串 请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100"、"5e2"、"-123"、"3.1416"、"0123"及"-1E-16"都表示数值,但"12e"、"1a3.14"、"1.2.3"、"+-5"及"12e+5.4"都不是。 解题: 数值错误的形式有多种多样,但是正确的...

  • 加法伺候  //超过20位数值相加---------------------------------------- function bigNumAdd(a, b) {if (!(typeof a === "string" && typeof b === "string")) return console.log("传入参数必...

  • 业务场景: 从中文字句中匹配出指定的中文子字符串 .这样的情况我在工作中遇到非常多, 特梳理总结如下. 难点: 处理GBK和utf8之类的字符编码, 同时正则匹配Pattern中包含汉字,要汉字正常发挥作用,必须非常谨慎.推荐最好统一为utf8编码,如果不是这种最优情况,也有酌情处理. 往往一个具有普适性的正则表达式会简化程...

  • 简单record 一下 #include // 'struct sockaddr_in' #include #include // 'struct ifreq' and 'struct if_nameindex' #include #inc...