一个活期储蓄帐户包括账号(id),余额(balance),年利率(rate)等信息,还包括显示账户信息(show),存款(desposit),取款(withdraw),结算利息(settle)等操作。为此设计一个savingaccount类,将id,balance,rate,作为其成员数据,将show,deposit,withdraw,settle,均作为其成员函数。无论是存款取款还是结算利息,都需要修改当前的余额并且将余额的变动输出,这些公共操作由私有成员函数record来执行。

根据所学知识代码持续完善中……

#include <iostream>
#include<cmath>
using namespace std;
class SavingAccount{
private:int id;             //账户double balance;       //余额double rate;          //年利率int lastdate;         //余额上一次变化的日期double accumulation;  //余额按日累加之和int accumulate(int date); //获得到指定日期位置的存款累计值double getbalance(){return balance;}double getrate(){return rate;}void record(int date,double amount);    //记账
public:SavingAccount(int date,int id,double rate);    //构造函数void deposit(int date,double amount);   //存款void withdrawl(int date,double amount);       //取款void show();   //显示余额void settle(int date);  //结算利息,每年一月一日调用此函数
};
//类的成员函数的实现
SavingAccount::SavingAccount(int date,int id,double rate):id(id),balance(0),rate(rate),lastdate(date),accumulation(0){cout<<"#"<<id<<"is created"<<endl;
}
int SavingAccount::accumulate(int date){
return accumulation+balance*(date-lastdate);
}
void SavingAccount::record(int date,double amount){lastdate=date;amount=floor(100*amount+0.5)/100;   //floor为向下取整函数,此处可以做到保留两位小数balance+=amount;cout<<date<<"\t#"<<id<<"\t"<<amount<<"\t"<<balance<<endl;
}
void SavingAccount::deposit(int date,double amount){record(date,amount);
}
void SavingAccount::withdrawl(int date, double amount){if(amount>balance)cout<<"not enough money"<<endl;elserecord(date,-amount);
}
void SavingAccount::show(){cout<<"#"<<id<<"\tBalance"<<balance<<endl;
}
void SavingAccount::settle(int date){double interest=accumulate(date)*rate/365; //计算年息if(interest!=0)record(date,interest);accumulation=0;
}int main()
{SavingAccount s1(0,11111,0.015);SavingAccount s2(1,22222,0.015);s1.deposit(5,5000);s2.deposit(25,10000);s1.deposit(45,5500);s2.withdrawl(60,11000);s1.settle(90);s2.settle(90);s1.show();s2.show();return 0;
}

银行账户管理系统(一)相关推荐

  1. 【MyBatis】第五课 银行账户管理系统网站开发

    概念 本文是根据Jsp以及Servlet课程,结合MyBatis框架的综合运用,开发一个小项目网站,使用MVC+三层架构的项目搭建方式来编写本文文章. 1.数据库的创建 本文使用MySQL数据搭建数据 ...

  2. 项目名称:Bank Account Management System 银行账户管理系统 简称BAM

    有兴趣的高手可以发表一下代码   供我们初级者借鉴借鉴 项目名称:Bank Account Management System 银行账户管理系统 简称BAM 项目描述:这是一个银行账户管理系统,用户可 ...

  3. 设计一个银行账户管理系统

    **欢迎使用小辉辉建设银行** 银行账户 注册账号 登录 请选择你要执行的银行业务 银行账户管理系统,使用HashMap函数做出来要比较容易一些,而我没有用到哈哈,这个系统开始搞的时候,还没有学到ha ...

  4. 银行账户管理系统c语言链表,课程设计银行储蓄管理系统Word版

    <课程设计银行储蓄管理系统Word版>由会员分享,可在线阅读,更多相关<课程设计银行储蓄管理系统Word版(22页珍藏版)>请在人人文库网上搜索. 1.传播优秀Word版文档 ...

  5. 课程设计-银行账户管理系统

    编程实现:(仔细业务之间的包含关系,并完成以下编程需求,要适当提高代码的可复用性.) 用户:账号(int:系统随机产生8位数字).姓名(str).密码(int:6位数字).地址.存款余额(int).开 ...

  6. 基于Java的银行账户管理系统

    一.项目介绍 基于Java GUI的银行账户信息管理系统,可直接启动演示.包含账户查询.开户.销户.存款.取款.账户统计等功能.适合作为课程设计.大作业.毕业设计项目. 二.技术介绍: Java;Sp ...

  7. 个人银行账户管理系统

    #include <bits/stdc++.h> #include <iostream> #include <cstring> #include <cstdl ...

  8. 【Java】银行账户管理系统

    系统实现: 开发语言是Java,开发平台是eclipse,通过文件储存数据,借助Java的GUI来实现交互.自己来写界面的话当然比较烦,于是我用的eclipse的插件WindowBuilder,通过可 ...

  9. c#设计一个Windows应用程序,模拟一个简单的银行账户管理系统。完成“创建账A款”“存款”和“查询余额”的模拟操作。程序功能如下:

    (1)当单击"创建账户"按钮时,显示如图4-24所示信息,其中,卡号为随机生成的一100000-499 999的一个值,余额初始化为100元. (2)在"取款" ...

最新文章

  1. MAC OS下使用OpenSSL生成私钥和公钥的方法
  2. (0097)iOS开发之应用间的分享系列(2)
  3. 吴裕雄 oracle PL/SQL编程
  4. 每日一皮:这也许是稍微二字最好的诠释...
  5. 学习.Net的经典网站
  6. 海南工会云会员认证_五一有奖答题来了,欢迎广大工会会员登录参与活动
  7. Python3 OOP(四) 获取对象信息
  8. Django学习---原生ajax
  9. Weex 解决Print: Entry, :CFBundleIdentifier, Does Not Exist 错误方法
  10. Arm华为NXP睿赛德大咖云集!2020中国嵌入式技术大会嘉宾揭晓
  11. Dubbo(九) dubbo的配置文件加载顺序优先级
  12. stochastic noise and deterministic noise
  13. LeetCode——remove-duplicates-from-sorted-list
  14. 正弦电压有效值推导过程(为什么与频率无关)
  15. 2021年最值得推荐的29个开源软件,想提升自己的程序员赶快收藏
  16. 随机向量函数链神经网络(RVFLNN)
  17. win7连接惠普打印机p1108
  18. pwm调速流程图小车_51单片机智能小车《pwm调速按键控制小车动作》
  19. 娱乐蓝屏程序, 禁用键盘鼠标, 指定键可恢复
  20. ProxmoxVE折腾记录(二)--版本升级

热门文章

  1. 微信小程序火车票查询 直取12306数据
  2. 程序设计入门——C语言 翁恺 第3周编程练习
  3. 在hadoop中伪分布式部署的命令与步骤
  4. 【每日随笔】记录完整的劳动仲裁过程 一 ( 赢火虫律师平台 | 赢火虫手机端跟进案件信息 | 等待律师接单 | 提交信息给律师 )
  5. 鼠标点击按钮相应两次
  6. 网页引用Font Awesome图标
  7. SIAL跻身世界三大食品展的成功哲学
  8. 网站中的新老访客怎么定义,有何区别?
  9. ABAP 创建及修改采购申请
  10. python借助jieba包对单独test和txt文档进行中文分词