项目4:多分数段函数求值
一、问题及代码
/*
* 文件名称:第3次上机作业.cpp
* 作 者:马啸天
* 完成日期:2017 年 4月 7 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:输入一个自变量x
* 问题描述:我的C++程序,求分段函数
* 程序输出:在x的取值范围不同时输出不同的y值
* 问题分析:略
* 算法设计:略
*/
#include <iostream.h>
#include <cmath>
void main()
{
double x,y;
cout<<"请输入x的值:";
cin>>x;
if (x<2)
y=x;
else if(x>=2&&x<6)
y=x*x+1;
else if(x>=6&&x<10)
y=sqrt(x+1);
else
y=1/(x+1);
cout<<"y的值为:"<<y<<endl;
}
二、运行结果
项目2:本月有几天?
一、问题及代码
/*
* 文件名称:第3次上机作业.cpp
* 作 者:马啸天
* 完成日期:2017 年 4月 7 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:输入年份x和月份y
* 问题描述:我的C++程序,求哪一年的哪个月有几天
* 程序输出:在不同的月份输出不同的天数
* 问题分析:略
* 算法设计:略
*/
#include <iostream.h>
void main()
{
int x,y,z;
cout<<"请输入年、月: ";
cin>>x>>y;
switch(y)
{
case 1: z=31;
case 3: z=31;
case 5: z=31;
case 7: z=31;
case 8: z=31;
case 10: z=31;
case 12: z=31; break;
case 4: z=30;
case 6: z=30;
case 9: z=30;
case 11: z=30; break;
case 2:
if((x%4==0&&x%100!=0)||(x%400==0))
z=29;
else
z=28;
break;
default:
cout<<"输入有误"<<endl;
}
cout<<"本月天数为:"<<z<<endl;
}
二、运行结果
一、问题及代码
/*
* 文件名称:第3次上机作业.cpp
* 作 者:马啸天
* 完成日期:2017 年 4月 7 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:输入总收入
* 问题描述:我的C++程序,求本月的应缴个人所得税
* 程序输出:输入不同的收入得出不同的所得税
* 问题分析:略
* 算法设计:略
*/
#include <iostream>
using namespace std;
int main( )
{
double dSalary,dTax=0,dNetIncome=0;
cout<<"请输入您本月的收入总额(元):";
cin>>dSalary;
if(dSalary<=3500)
dTax=0,dNetIncome=dSalary;
if(3500<dSalary&&dSalary<=5000)
dTax=(dSalary-3500)*0.03,dNetIncome=dSalary-dTax;
if(5000<dSalary&&dSalary<=8000)
dTax=(dSalary-3500)*0.1-105,dNetIncome=dSalary-dTax;
if(8000<dSalary&&dSalary<=12500)
dTax=(dSalary-3500)*0.2-555,dNetIncome=dSalary-dTax;
if(12500<dSalary&&dSalary<=38500)
dTax=(dSalary-3500)*0.25-1005,dNetIncome=dSalary-dTax;
if(38500<dSalary&&dSalary<=58500)
dTax=(dSalary-3500)*0.3-2755,dNetIncome=dSalary-dTax;
if(58500<dSalary&&dSalary<=83500)
dTax=(dSalary-3500)*0.35-5505,dNetIncome=dSalary-dTax;
if(83500<dSalary)
dTax=(dSalary-3500)*0.45-13505,dNetIncome=dSalary-dTax;
cout<<"您本月应缴个人所和税 "<<dTax<<" 元,税后收入是 "<<dNetIncome<<" 元。\n";
cout<<"依法纳税,共享繁荣。谢谢使用!\n";
return 0;
}
二、运行结果