博客
关于我
银行系统改编版
阅读量:579 次
发布时间:2019-03-11

本文共 2676 字,大约阅读时间需要 8 分钟。

今天对银行系统进行了修改终于修改好了。下面是我今天忙了一大早的成果。大家看看吧。

#include<iostream>

using namespace std;
class Account
{
friend class CheckingAccount;
protected:
double balance;  //账户余额
public:
Account(double Balanc);
void credit();//向当前余额加钱
int debit();//从账中取钱
int getBalance();//返回balance值
};
Account::Account(double Balance)
{
  balance=Balance;
}
void Account::credit()
{
int save;
 cout<<"您的银行可用余额为:"<<balance<<endl;
 cout<<"请输入您要存入的金额:"<<endl;
 cin>>save;
 balance=balance+save;
 cout<<"存入后的余额为:"<<endl;
 cout<<balance<<endl;
}
int Account::debit()
{
 int demand;int flag=1;
 cout<<"请输入您要取出的金额:"<<endl;
 cin>>demand;
 if(demand>balance)
 {balance=balance;
 cout<<"对不起!您的余额不足,请充值:"<<endl;
 }
 else
 { balance=balance-demand;
   cout<<"您已成功取出"<<demand<<"元现金"<<endl;
   cout<<"您的余额为"<<getBalance()<<endl;;
   //cout<<"您的余额为"<<balance<<endl;
   flag=0;//表示钱已被取走
 }
  return flag;
}
int Account::getBalance()
{
 return balance;
}
class SavingAccount:public Account
{
friend class CheckingAccount;//下面的CheckingAccount中会用到//SavingAccount中的caclculateInterest
private:
//double balance;
double interestrate;//账户的比例
public:
SavingAccount(double Balance,double Interestrate);
int caclculateInterest();
};
SavingAccount::SavingAccount(double Balance,double Interestrate):Account(Balance)
{
balance=balance;
 interestrate=Interestrate;
 //credit();//存
 //debit();//取
}
int SavingAccount::caclculateInterest()
{
double money;
money=balance*interestrate;
return money;//利息
}
class CheckingAccount:public SavingAccount
{
private:
double fare;//表示每笔的费用
public:
CheckingAccount(double Balance,double Interestrate,double Fare);
void rescredit();
int resdebit();
};
CheckingAccount::CheckingAccount(double Balance,double Interestrate,double Fare):SavingAccount(Balance,Interestrate)
{
balance=Balance;
interestrate=Interestrate;
  fare=Fare;
}
/*void CheckingAccount::rescredit()
{
 credit();
 //caclculateInterest();
 int save;
 cout<<"请输入您要存入的金额:"<<endl;
 cin>>save;
 balance=balance+save;
}*/
int CheckingAccount::resdebit()
{bool flag;
 //credit();
 //debit();
 if(debit()==0)
 {
cout<<"您已成功提出钱!:"<<endl;
balance=balance-fare;
cout<<"取钱收取费用!"<<endl; 
 cout<<"收取的费用后余额产生的利息:"<<caclculateInterest()<<endl;
 }
 else
cout<<"收费不成功:"<<endl;
 return balance;
}
void main()
{
cout<<"************欢迎您使用张新华银行系统************"<<endl;
cout<<"***********************************"<<endl;
 Account A1(100);
 A1.credit();A1.debit();A1.getBalance();
 cout<<"***********************************"<<endl;
 SavingAccount S1(A1.getBalance(),0.2);
 S1.credit();
 S1.debit();
 S1.getBalance();
 cout<<"账户的利息:"<<S1.caclculateInterest()<<endl;
  cout<<"***********************************"<<endl;
  CheckingAccount C1(S1.getBalance(),0.2,30);
 C1.credit();
 //C1.debit();
 cout<<"收取费用后的余额:"<<C1.resdebit();
}

转载地址:http://cvevz.baihongyu.com/

你可能感兴趣的文章
MySQL异步操作在C++中的应用
查看>>
MySQL引擎讲解
查看>>
Mysql当前列的值等于上一行的值累加前一列的值
查看>>
MySQL当查询的时候有多个结果,但需要返回一条的情况用GROUP_CONCAT拼接
查看>>
MySQL必知必会(组合Where子句,Not和In操作符)
查看>>
MySQL必知必会总结笔记
查看>>
MySQL快速入门
查看>>
MySQL快速入门——库的操作
查看>>
mysql快速复制一张表的内容,并添加新内容到另一张表中
查看>>
mysql快速查询表的结构和注释,字段等信息
查看>>
mysql怎么删除临时表里的数据_MySQL中关于临时表的一些基本使用方法
查看>>
mysql性能优化
查看>>
mysql性能优化学习笔记-存储引擎
查看>>
MySQL性能优化必备25条
查看>>
Mysql性能优化(1):SQL的执行过程
查看>>
Mysql性能优化(2):数据库索引
查看>>
Mysql性能优化(3):分析执行计划
查看>>
Mysql性能优化(4):优化的注意事项
查看>>
Mysql性能优化(5):主从同步原理与实现
查看>>
Mysql性能优化(6):读写分离
查看>>