信奥之路-C++第5课作业
1. 计算税收
【问题描述】
对某产品征收税金,在产值1万元以上收税5%;在1万元以下但在5000元或者以上的征收税3%;在5000元以下但在1000元或以上征收税2%;1000元以下的免收税。编程实现输入产值,输出该产品的收税金额。
【样例输入】1000
【样例输出】20
#include <iostream>
using namespace std;
int main(){
int n;
cin >> n;
switch(n/1000){
case 0:
cout << 0 << endl;
break;
case 1:
case 2:
case 3:
case 4:
cout << n*0.02 << endl;
break;
case 5:
case 6:
case 7:
case 8:
case 9:
cout << n*0.03 << endl;
break;
default:
cout << n*0.05 << endl;
}
return 0;
}
2. 编写简单计算器
【问题描述】
一个最简单的计算器,支持+, -, *, / 四种运算。仅需考虑输入输出为整数的情况,数据和运算结果不会超过int表示的范围。
【输入】
输入只有一行,共有三个参数,其中第1、2个参数为整数,第3个参数为操作符(+,-,*,/)。
【输出】
输出只有一行,一个整数,为运算结果。然而:
1) 如果出现除数为0的情况,则输出:Divided by zero!
2) 如果出现无效的操作符(即不为 +, -, *, / 之一),则输出:Invalid operator!
【样例输入】1 2 +
【样例输出】3
#include <iostream>
using namespace std;
int main(){
int m, n;
char f;
cin >> m >> n >> f;
switch(f){
case '+':
cout << m+n << endl;
break;
case '-':
cout << m-n << endl;
break;
case '*':
cout << m*n << endl;
break;
case '/':
if(n==0){
cout << "Divided by zero!" << endl;
}else{
cout << m/n << endl;
}
break;
default:
cout << "Invalid operator!" << endl;
}
return 0;
}
1. 晶晶赴约会
【问题描述】
晶晶的朋友贝贝约晶晶下周一起去看展览,但晶晶每周的1、3、5有课必须上课,请帮晶晶判断她能否接受贝贝的邀请,如果能输出YES;如果不能则输出NO。
输入:一行,贝贝邀请晶晶去看展览的日期,用数字1到7表示从星期一到星期日。
输出:一行,如果晶晶可以接受贝贝的邀请,输出YES,否则,输出NO。注意YES和NO都是大写字母!
【样例输入】2
【样例输出】YES
#include <iostream>
using namespace std;
int main(){
int n;
cin >> n;
if(n==1||n==3||n==5){
cout << "NO" << endl;
}else{
cout << "YES" << endl;
}
return 0;
}
2. 判断星期几
【问题描述】
已知2017年10月1日是星期日,输入任意一个整数代表十月份的一天,求这一天是星期几(比如输入5,就代表10月5日)。
输入:输入一行,包含一个整数n。(1 <= n <= 31)。
输出:输出一行,表示这一天是星期几。
【样例输入】1
【样例输出】星期日
#include <iostream>
using namespace std;
int main(){
int n;
cin >> n;
switch(n%7){
case 1:
cout << "星期日" << endl;
break;
case 2:
cout << "星期一" << endl;
break;
case 3:
cout << "星期二" << endl;
break;
case 4:
cout << "星期三" << endl;
break;
case 5:
cout << "星期四" << endl;
break;
case 6:
cout << "星期五" << endl;
break;
default:
cout << "星期六" << endl;
}
return 0;
}
3. 计算分段函数的值
【问题描述】
编程程序,计算下列分段函数y=f(x)的值,。
y=2x+1,x<0
y=x*x,0≤x≤3
y=3x,x>3
输入:输入一个double类型的数x。
输出:输出f(x)的值(保留一位小数)
【样例输入】-2.4
【样例输出】-3.8
#include <iostream>
#include <iomanip>
using namespace std;
int main(){
double x, y;
cin >> x;
if(x<0){
y = 2*x+1;
}else if(x<=3){
y = x*x;
}else{
y = 3*x;
}
cout << fixed <<setprecision(1) << y << endl;
return 0;
}
作者: 王春天 出处: http://www.cnblogs.com/spring_wang/ Email: spring_best@yeah.net QQ交流:903639067
QQ群:322581894 关于作者: 大连天翼信息科技有限公司 技术总监。 SNF快速开发平台 创始人。应用平台架构师、IT规划咨询专家、业务流程设计专家。 专注于快速开发平台的开发、代码生成器。同时专注于微软平台项目架构、管理和企业解决方案,多年项目开发与管理经验,精通DotNet系列技术Vue、.NetCore、MVC、Webapi、C#、WinForm等,DB(SqlServer、Oracle等)技术,移动端开发。熟悉Java、VB及PB开发语言。在面向对象、面向服务以及数据库领域有一定的造诣。现从事项目实施、开发、架构等工作。并从事用友软件产品U8、U9、PLM 客开工作。 如有问题或建议,请多多赐教! 本文版权归作者和CNBLOGS博客共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过邮箱或QQ 联系我,非常感谢。


浙公网安备 33010602011771号