- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
试验名称:储蓄账户模拟
姓名:XX 学号:XXXXXXXXXX 班级XXXXXXXX 完毕日期:20XX-XX-XX
试验目的:这个试验题目的重要目的是为了让同学们深入理解某些有关C++类的更多的某些特性,例如static组员的处理等
过程描述:
一、本试验中重要内容有创立一种SavingAccount类,这个类需要完毕如下的功能:
每一种SavingAccount应当包括一种年利率和帐户余额的数据组员;
提供一种构造函数初始化一种SavingAccount的实例;
每月结算一次利息,并更新帐户余额信息;
(4)一种更改年利率的措施;
(5)年利率由于是所有的SavingAccount共享的,因此可以考虑用static数据组员来实现。
二、本试验中
1、首先定义一种名为SavingAccount的类,其中数据组员有三个,分别为balance(表达存款余额),rate(表达年利率)和AccountName(表达储户名字)。其中rate用static数据组员来实现。
例:
private:
double balance;
static double rate;
char AccountName[11]; //规定储户名字不超过10个字符。
2、而在public组员中,有四个函数,分别如下:
//构造函数
SavingAccount(double ba=0,char Name[11]=””):balance(ba){strcpy(AccountName,Name);}
//每月结算一次利息,并更新账户余额信息。其中包括一种附加功能,即计算n个月后的利息
void print(int); //int型为n个月参数
//更改年利率
static void SetRate(double newRate){rate=newRate;}
//附加功能,为已创立的账户更名字
void change(char newname[11]=””){strcpy(AccountName,newname);}
3、此外,函数的实现文献如下:
void SavingAccount::print(int n=1)
{
//此处包括一种输入月份不合法检测
if(n=0){
for (int i=1;i=n;++1){
balance=balance*(1+rate/12);
}
count”年利率:”rate” “AccountName”存”n”个月新余额:”balanceendl;
else count”输入不合法”;
}
4、接着用测试程序来验证类的对的性,在测试程序savingAccountTest.cpp中,首先创立两个SavingAccount类对象,saver1和saver2,根据题意,两者的余额分别为.00和3000.00,顾客名设置为zhangsan和lisi。
例:
SavingAccount saver1(.00,”zhangsan”);
SavingAccount saver2(3000.00,”lisi”);
默认年利率为0.03。
再通过print函数分别计算出两位存款人1月后的存款额,例:
saver1.print(1);
saver2.print(1);
countendl;
再使用setRate函数将利率变化为0.04,例:
SavingAccount::setRate(0.04); //设置利率
然后打印出两者新的1月后的存款额
saver1.print(1);
saver2.print(1);
运行成果如下:
年利率:0.03 zhangsan存1个月新余额:
年利率:0.03 lisi存1个月新余额:3007.5
年利率:0.04 zhangsan存1个月新余额:.68
年利率:0.04 lisi存1个月新余额:3017.53
附加功能测试
//创立一种新顾客wangmazi,使其初始存款额为4000
SavingAccount saver3(4000,”wangmazi”);
//计算6个月后新余额
saver3.print(6);
//附加功能:更名,把wangmazi改为wangwu
saver3.change(“wangwu”);
saver3.print(0);
//进行输入检测测试
saver3.print(-1);
运行成果如下:
年利率:0.04 wangmazi存6个月新余额:4080.67
年利率:0.04 wangwu存0个月新余额:4080.67
输入不合法
三、问题及注意项
1、首先,由于使用static的数据组员,因此,必须要有static的组员函数setRate来变化该数据。
2、另一方面,静态组员的
原创力文档


文档评论(0)