Code Monkey home page Code Monkey logo

atm_simulator's Introduction

ATM仿真软件

wakatime

程序由 C++ 语言编写,图形界面使用了 EasyX 图形库

账号与密码采用 MD5 加密算法加密后储存,提供加密算法的 MD5.hMD5.cpp 来自 github.com/JieweiWei/md5

登录界面

输入卡号与密码进行登录,连续三次密码输入错误账户会被锁定

有一个专门的管理员账户,账号为 1234567890,密码为 123456,可以新建账户,以及直接对账户金额进行操作,管理员账户通过修改密码操作可以对已锁定账户进行解锁

所有账号信息是用文件保存在本地的,故初次运行没有用户账户,需要管理员手动新建

主菜单

分为账户管理、金额操作、信息查询三个模块

账户管理模块

管理员账号的功能:

  • 新建账户:输入卡号(不超过 19 位)、姓名(不超过 5 个汉字)、密码(必须为 6 位)即可创建,初始账户余额为 0
  • 删除账户:输入要删除账户的卡号进行删除操作
  • 修改密码:输入要修改密码的卡号和密码,新密码只输入一次,没有第二次确认。此外,修改密码操作会重置账户连续输入错误密码的次数,即使新密码与原密码相同,次数也会被重置

普通用户账号的功能:

  • 注销账户:输入密码,注销当前账户
  • 修改密码:输入新密码,并再次输入确认,两次输入相同且与旧密码不同即可修改密码
  • 升级账户:凑数的功能,没有实际意义

金额操作模块

管理员账号的功能:

  • 存款:输入存款卡号和存款金额即可,存款金额不得超过 15 位
  • 取款:输入取款卡号和取款金额即可,取款金额不得超过 15 位,且不超过账户余额
  • 转账:输入转出、转入卡号和转账金额,转账金额不得超过 15 位,且不超过转出账户余额

普通用户账号的功能:

  • 存款:输入存款金额,需为 100 的整数倍,单笔交易最大限额 10000 元,单日累计限额 100000 元,交易成功后可选择是否打印凭证,凭证为保存在程序可执行文件相同目录下的一个 TXT 文件
  • 取款:输入取款金额,需为 100 的整数倍,单笔交易最大限额 5000 元,且不得超过账户余额,单日累计限额 20000 元,交易成功后可选择是否打印凭证,凭证为保存在程序可执行文件相同目录下的一个 TXT 文件
  • 转账:输入收款账户卡号和转账金额,不得超过账户余额,单日累计限额 50000 元,交易成功后可选择是否打印凭证,凭证为保存在程序可执行文件相同目录下的一个 TXT 文件

信息查询模块

管理员账号的功能:

  • 余额查询:输入卡号,查询其余额
  • 交易记录:输入卡号,其交易记录将以 TXT 文件导出到程序可执行文件相同目录下

普通用户账号的功能:

  • 余额查询:显示当前账户余额
  • 交易记录:交易记录将以 TXT 文件导出到程序可执行文件相同目录下

关于卡号、密码、金额的输入

普通用户账户为用鼠标点击按钮的方式进行输入,输入格式有一定的限制;管理员账户使用弹出式对话框进行输入,没有输入格式的限制,非常规的输入可能导致程序崩溃

关于保存在本地的账户信息

文件名为 ATM_Simulator.dat,采用二进制形式存储数据,保存在程序可执行文件相同目录下

atm_simulator's People

Contributors

slinet6056 avatar

Stargazers

winter_pear avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.