【定义并实现一个银行类(Bank)】

【问题描述】根据下列要求编写程序,定义并实现一个银行类(Bank),包含如下数据成员和成员函数:

    (1)数据成员:

            ID:储户的帐号:long类型,私有权限

            Balance:用于存放储户的存款,double类型,私有权限

            Rational:表示存款利率,double类型,私有权限,静态数据成员

    (2)成员函数:

            无参数的构造函数:公有权限

            带两个参数的构造函数:公有权限

            void setID(long id);//设置账号的函数,公有权限

            void setBalance(double d):设置存款的函数,公有权限

            double getBalance():获取存款的函数,公有权限

            void setRational(double r):设置利率的静态函数,公有权限

            double getRational():获取利率的静态函数,公有权限

            void display():显示储户信息的函数,公有权限

    (3)在main()中先设置年利率如年利率为2.5%,再创建3个帐户,分别设置账户及存款金额,存款额分别为10000元、20000元、50000元,,分别输出每个帐户的本息及三个帐户的本息之和。注:系统缺省账户为10000,存款金额为0。

【输入形式】先输入利率(注:输入2.5表示年利率为2.5%),再输入3个账号及对应的存款金额。
【输出形式】初始账号及自己建立的3个账号的信息。
【样例输入】

    请输入利率:2.5

    请输入3个账号及对应的存款金额:

    10001 10000

    10002 20000

    10003 50000

【样例输出】

    账号:10000;   存款:0;   本息:0

    账号:10001;   存款:10000;   本息:250

    账号:10002;   存款:20000;   本息:500

    账号:10003;   存款:50000;   本息:1250

    3个账户的本息:82000

【样例说明】
【评分标准】2个评分点

代码如下:

#include  <iostream>
using  namespace  std;
//Bank的定义
class  Bank{
private:
    long ID; // 帐号
    double Balance; // 存款金额
    static  double  Rational;  //存款利率
public:
	Bank(); // 无参数的构造函数
    Bank(long id,double d); // 带两个参数的构造函数
    void setID(long id); // 设置账号的函数
    void setBalance(double d); // 设置存款的函数
    double getBalance(); // 获取存款的函数
    static void setRational(double r); // 设置利率的静态函数
    static double getRational(); // 获取利率的静态函数
    void display(); // 显示储户信息的函数
};
double Bank::Rational = 0.0; // 初始值为0

Bank::Bank(){
    ID = 10000;
    Balance = 0.0;
}

Bank::Bank(long id,double d){
    ID = id;
    Balance = d;
}

void Bank::setID(long id){
    ID = id;
}

void Bank::setBalance(double d){
    Balance = d;
}

double Bank::getBalance(){
    return Balance;
}

void Bank::setRational(double r){
    Rational = r / 100.0; // 将输入的年利率转化为小数
}

double Bank::getRational(){
    return Rational;
}

void Bank::display(){
    double Interest = Balance * Rational; // 计算利息
    double Total = Balance + Interest; // 计算本息和

    cout << "账号:" << ID << ";   存款:" << Balance << ";   本息:" <<Interest << endl;
}
int  main()
{
    Bank  c;//系统缺省账户
    double r;
    cout << "请输入利率:";
    cin >> r;
    Bank::setRational(r); // 设置利率

    Bank b1,b2,b3;

    long id1,id2,id3;
    double d1,d2,d3;

    cout << "请输入3个账号及对应的存款:" << endl;
    cin >> id1 >> d1;
    cin >> id2 >> d2;
    cin >> id3 >> d3;

    b1.setID(id1);
    b1.setBalance(d1);

    b2.setID(id2);
    b2.setBalance(d2);

    b3.setID(id3);
    b3.setBalance(d3);
    c.setID(10000);
    c.setBalance(0);
	c.display();

    b1.display();
    b2.display();
    b3.display();

    double Total = b1.getBalance() + b2.getBalance() + b3.getBalance();
    double Interest = Total * Bank::getRational();
    double Sum = Total + Interest;

    cout << "3个账户的本息:" << Sum << endl; 
}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
实验题目 编写一个实现银行帐户的概念,包括的属性有“帐号”、“储户姓名”、“地址”、“存款余额”,包括的方法有“存款”、“取款”、“查询”、“计算利息”、“累加利息”等。 实验要求 改写上面的,增加一个的静态属性“最小余额”和一个用来修改这个最小余额属性的方法。 改写上面的,增加一个的静态属性“活期利率”和封装这个属性的相应方法。 程序模块 实验后的结果验证 总结体会 通过此次实验,我初步掌握了编写一个的概念,更进一步的熟悉了static等等与之用法相似的语法,增强了自己学好JAVA的信心。进一步掌握静态对象和非静态对象的区别与联系。 静态对象的数据在全局是唯一的,一改都改。如果你想要处理的东西是整个程序中唯一的,弄成静态是个好方法。 非静态的东西你修改以后只是修改了他自己的数据,但是不会影响其他同对象的数据。 静态对象和非静态对象都是对象,是对象都是要实例化的。不同之处就是2者的数据表现和存储方式不一样。 静态的好处: 引用方便。对于公用型的变量,直接用 名.静态方法名 或者 名.静态变量名就可引用并且直接可以修改其属性值,不用getter和setter方法。 保持数据的唯一性。此数据全局都是唯一的,修改他的任何一处地方,在程序所有使用到的地方都将会体现到这些数据的修改。 有效减少多余的浪费。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

武帝为此

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值