(1)一、问题及代码(C++)
/*
* 文件名:[C++第三次作业]选择结构设计
* 作 者:张泽桦
* 班号:G3-19)
* 完成日期:2017.3.29
* 版 本 号:visual studio 2015
* 对任务及求解方法的描述部分:【项目2】本月有几天?
* 输入描述:略
* 问题描述:自选if语句的嵌套或/和switch语句完成程序设计
编程序,输入年份和月份,输出本月有多少天。合理选择分支语句完成设计任务。
样例输入1:2004 2
输出结果1:本月29天
样例输入2:2010 4
输出结果2:本月30天
* 程序输出:本月有多少天
* 问题分析:利用if结构对多种情况逐一归类分析
* 算法设计:略
*/
#include <iostream>
using namespace std;
int main()
{
int year, month;//year表示年份,month表示月份
cout << "请输入年份和月份" << endl;
cin >> year >> month;
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))//考虑闰年的情况
{
if (month == 2)
cout << "本月有29天" << endl;
if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)
cout << "本月有31天" << endl;
if (month == 4 || month == 6 || month == 9 || month == 11)
cout << "本月有30天" << endl;
}
else//考虑不是闰年的情况
{
if (month == 2)
cout << "本月有28天" << endl;
if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)
cout << "本月有31天" << endl;
if (month == 4 || month == 6 || month == 9 || month == 11)
cout << "本月有30天" << endl;
}
return 0;
}
二、运行结果
(2)一、问题及代码
/*
* 文件名:[C++第三次作业]选择结构设计
* 作 者:张泽桦
* 班号:G3-19
* 完成日期:2017.3.30
* 版 本 号:visual studio 2015
* 对任务及求解方法的描述部分:【项目3】定期存款利息计算器
* 输入描述:略
* 问题描述:定期存款利息计算器
输入存款金额并选择存款种类,计算出利息(不计利息税)和本息合计。要求使用switch语句,根据选择的存款种类,确定利率和存期后计算。
提示:利息=金额×年利率×存期(单位:年,3个月为0.25年,6个月为0.5年)。
例如:1000元存6个月,利息=1000×0.033×0.5=16.5元
年利率:3个月 3.10%,6个月 3.30%,一年 3.50%,二年 4.40%,三年 5.00%,五年 5.50%。
* 程序输出:本月有多少天
* 问题分析:利用if结构对多种情况逐一归类分析
* 算法设计:略
*/
#include <iostream>
using namespace std;
int main()
{
double deposit,interest,total;
int a;
cout << "欢迎使用利息计算器!" << endl;
cout << "请输入存款金额";
cin >> deposit;
cout << "====存款期限==== \n 1. 3个月\n 2. 6个月\n 3. 一年\n 4. 二年\n 5. 三年\n 6. 五年" << endl;
cout << "请输入存款期限的代号:" << endl;
cin >> a;
switch (a)
{
case 1:interest = deposit*0.031*0.25; break;
case 2:interest = deposit*0.033*0.5; break;
case 3:interest = deposit*0.035*1; break;
case 4:interest = deposit*0.044*2; break;
case 5:interest = deposit*0.050*3; break;
case 6:interest = deposit*0.050*5; break;
default:cout << " error";
}
total = deposit + interest;
cout << "到期利息为:" << interest << "元。" << "本息合计共:" << total << "元" << endl;
cout << "感谢您的使用,欢迎下次光临!" << endl;
return 0;
}
二、运行结果
(3)一、问题及代码
/*
* 文件名:[C++第三次作业]选择结构设计
* 作 者:张泽桦
* 班号:G3-19
* 完成日期:2017.3.30
* 版 本 号:visual studio 2015
* 对任务及求解方法的描述部分:【项目4】多分数段函数求值
* 输入描述:从键盘输入x的值(要求为实型),根据下面的公式计算并输出的值。
y=x(x<2)
y=x^2+1 (2<+x<6)
y=sqrt(x+1)(6<=x<10)
y=1/(x+1)(x>=10)
* 程序输出:y的值
* 问题分析:利用if结构对多种情况逐一归类分析
* 算法设计:如下
*/
#include <iostream>
using namespace std;
int main()
{
cout << "请输入变量x的值" << endl;
int x, y;
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 if (x >= 10)
y = 1 / (x + 1);
cout << "y=" << y << endl;
return 0;
}