ATM取款机模拟程序
课程设计任务书
课程名称:C++程序设计课程设计
设计题目:ATM取款机模拟程序
已知技术参数和设计要求:
1. 问题描述:
课题的任务是设计一个ATM取款机的模拟程序。日常生活中,我们常使用ATM取款机,对它的操作过程有所了解。这里我们要模拟的是用户所见的ATM取款机的属性和行为,ATM机与网络连接的部分不包括在这个任务中。设计中应尽可能把它模拟得与真实的ATM接近一些,我们抽象出下列问题:
(1) 用户插卡,ATM验证用户帐号信息。
(2) 用户首次操作须验证密码。
(3) 用户查询余额,ATM显示余额。在atm倒着输密码
(4) 用户取款,ATM操作交易过程。
(5) 用户转账,ATM请求插入转入卡,然后操作交易过程。
(6) 用户更改密码,ATM受理此业务。
(7) 用户退卡。ATM清理现场。
(8) 所有用户信息保存在文件中。
(9) 对于一个在线用户,如果超过一定时间用户没有任何操作,ATM锁机,
  直到用户退卡为止。
(10) ATM向用户显示欢迎词及其他提示信息。
2. 功能要求:
(1)插卡功能(用卡号模拟);
(2)取款功能;
(3)查询余额功能;
(4)验证帐号功能;
(5)更改密码功能;
(6)退卡功能;
(7)锁卡功能。
3. 界面要求:
用户界面设计不做统一规定,但应做到界面友好,易于操作。
4. 技术要求:
要求所有用户的信息以密文形式保存在数据文件中,加密算法为:字节各位取反,然后高半字节和低半字节交换位置。用户输入密码时不能以明文形式显示在屏幕上,应以“*”号代替来显示用户密码的输入。
要求利用面向对象的方法以及C++的编程思想来完成系统的设计;在设计的过程中,建立清晰的类层次; 在系统设计中要分析和定义各个类,每个类中要有各自的属性和方法;要求运用面向对象的机制来实现系统功能。要求主函数(或图形界面下的主调函数)很“干净”,只有一些类对象的定义和某个类对象的一个成员函数的调用。
5.    课程设计时间:15周、16周
6.    课程设计的考核方式及评分方法
1)考核方式
课程设计结束时,在机房当场验收。
教师提供测试数据,检查运行结果是否正确。
回答教师提出的问题。
学生提交课程设计文档(A4纸打印)
2)评分方法
上机检查 :书面报告:答辩=6 :3 :1,没有通过上机检查的其成绩直接记录不及格
指导教师签名:         日期:       
教研室主任签名:         日期:       
系主任签名:           日期:       
摘要
本实验设计说明书编写的是一个ATM取款机模拟程序。日常生活中,我们常使用ATM取款机,对它的操作过程和功能有一定的了解。因此在该设计书中我们模拟的就是ATM取款机的属性和行为,主要包括插卡,取款,查询余额,更改密码,退卡,锁卡功能。
本书主要内容分为三个部分,第一部分主要是阐述该程序的设计内容和要求,设计的题目以及设计出的程序应有哪些实用功能。第二部分是对该问题的整体描述,对问题进行深入的分析,设计,到最后编写出程序并进行测试。第三部分为该书的总结,主要是写在编写程序的时候所遇到的问题,解决方法以及心得。
最后,程序设计是一个创作的过程,解决问题的方法不是唯一的。所以独立思考问题,多想想解决方法,才更有助于程序设计水平的提高。
关键词:链表;面向对象方法;ATM取款模拟;文件和流;类和对象
1设计内容与要求 ………………………………………………………………………………1
2设计说明 ………………………………………………………………………………………2
2.1 问题描述与功能设计……………………………………………………………………2
  2.2流程图……………………………………………………………………………………2
2.3 类定义和链表 …………………………………………………………………………4
2.4 界面设计…………………………………………………………………………………5
2.5 测试………………………………………………………………………………………7
3总结……………………………………………………………………………………………8
参考文献 ………………………………………………………………………………………9
附录A 源代码…………………………………………………………………………………10
 
1.设计内容和要求
设计内容
课题的任务是设计一个ATM取款机的模拟程序。日常生活中,我们常使用ATM取款机,对它的操作过程有所了解。这里我们要模拟的是用户所见的ATM取款机的属性和行为,ATM机与网络连接的部分不包括在这个任务中。设计中应尽可能把它模拟得与真实的ATM接近一些,我们抽象出下列问题:
(1) 用户插卡,ATM验证用户帐号信息。
(2) 用户首次操作须验证密码。
(3) 用户查询余额,ATM显示余额。
(4) 用户取款,ATM操作交易过程。
(5) 用户转账,ATM请求插入转入卡,然后操作交易过程。
(6) 用户更改密码,ATM受理此业务。
(7) 用户退卡。ATM清理现场。
(8) 所有用户信息保存在文件中。
(9) 对于一个在线用户,如果超过一定时间用户没有任何操作,ATM锁机,直到用户退卡为止。
(10) ATM向用户显示欢迎词及其他提示信息。
设计要求
<1>功能要求:
(1)插卡功能(用卡号模拟);
(2)取款功能;
(3)查询余额功能;
(4)验证帐号功能;
(5)更改密码功能;
(6)退卡功能;
(7)锁卡功能。
<2>界面要求:
用户界面设计不做统一规定,但应做到界面友好,易于操作。
<3> 技术要求:
要求所有用户的信息以密文形式保存在数据文件中,加密算法为:字节各位取反,然后高半字节和低半字节交换位置。用户输入密码时不能以明文形式显示在屏幕上,应以“*”号代
替来显示用户密码的输入。
要求利用面向对象的方法以及C++的编程思想来完成系统的设计;在设计的过程中,建立清晰的类层次; 在系统设计中要分析和定义各个类,每个类中要有各自的属性和方法;要求运用面向对象的机制来实现系统功能。要求主函数(或图形界面下的主调函数)很“干净”,只有一些类对象的定义和某个类对象的一个成员函数的调用。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。