首页 python模拟银行ATM程序的设计说明书

python模拟银行ATM程序的设计说明书

举报
开通vip

python模拟银行ATM程序的设计说明书PAGE/NUMPAGES第2次综合训练报告题目:银行ATM模拟程序姓名:张也白专业:安全工程班级:通风15-1班指导教师:邓立军2016年5月9日目录TOC\o"1-3"\h\uHYPERLINK\l"_Toc448487395"1摘要PAGEREF_Toc448487395\h1HYPERLINK\l"_Toc448487396"2.设计思路PAGEREF_Toc448487396\h1HYPERLINK\l"_Toc448487401"3.源程序PAGEREF_T...

python模拟银行ATM程序的设计说明书
PAGE/NUMPAGES第2次综合训练报告题目:银行ATM模拟程序姓名:张也白专业:安全 工程 路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理 班级:通风15-1班指导教师:邓立军2016年5月9日目录TOC\o"1-3"\h\uHYPERLINK\l"_Toc448487395"1摘要PAGEREF_Toc448487395\h1HYPERLINK\l"_Toc448487396"2. 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 思路PAGEREF_Toc448487396\h1HYPERLINK\l"_Toc448487401"3.源程序PAGEREF_Toc448487401\h2HYPERLINK\l"_Toc448487402"4.代码分析2HYPERLINK\l"_Toc448487403"参考资料3银行ATM模拟程序1摘要自动柜员机,即ATM,是指银行在不同地点设置一种小型机器,利用一张信用卡大小的胶卡上的磁带记录客户的基本户口资料〔通常就是银行卡,让客户可以透过机器进行提款、存款、转账等银行柜台服务,大多数客户都把这种自助机器称为自动提款机。本文正是通过设计一个ATM模拟模拟程序来实现ATM机系统的基本功能,充分运用自己所学的Python知识进行设计编程。实现的主要功能有:账户信息查询、存款操作、取款操作、修改密码功能、退出系统功能。用户任意选择1张银行卡〔输入1位1~3的数字,输入初始密码123456即可进入ATM操作系统菜单〔如图1所示,若输入密码连续错误三次则锁卡自动退出系统〔如图2所示,系统菜单各功能〔如图3所示。编写程序时的环境是Python3.4,所以代码中print及input函数可能与python2.X版本有一些差别。参考了教材中第八章面向对象程序设计,编写了两个类包括ATM机类和银行卡Card类,编写了若干个函数以实现整个程序模拟ATM机的各种功能。变量和函数的命名主要使用了Camel命名法,类的命名主要使用了Pascal命名法,程序共189行〔含空行,因为时间比较仓促,可能有些地方写的比较乱,有些地方命名也不 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 。另外因为对文件的操作不熟练,在网上也没找到太多相关的资料,请多包涵。图1图2图32设计思路程序设计灵感来自银行ATM机,在这里将ATM机的各种功能抽象与简化,设计了银行ATM模拟程序。根据我们日常的生活经验,我们要使用ATM机就需要一张银行卡。运用面向对象的编程方法,把ATM机和银行卡简化并抽象为两个类:1银行卡类,主要用来存储账户信息,包括卡号、密码、用户名、余额四个属性,另外写了一个构造方法。2ATM机类,主要用来查询和修改银行卡的信息,写了五个方法,以银行卡类的对象作为参数,实现银行卡查询〔包括卡号、密码、用户名、余额、存款〔银行卡余额增加、取款〔银行卡余额减少、修改银行卡密码、退卡〔退出程序等功能。写好了类后,我们开始模拟ATM机的操作过程。首先,使用ATM机我们需要插卡,从文件中读取银行卡信息〔想法并没有能很好的实现,我们预设三张银行卡,用户选择〔1~3号银行卡,根据银行卡信息创建一个对应的银行卡对象,以及ATM机对象。插卡后,我们需要用户输入密码。如果输入密码与银行卡密码匹配就进入ATM系统,如果输入密码错误打到三次就锁卡退出。进入ATM系统,用户可以选择ATM的五个功能:1银行卡查询,实现的方法就是使用print函数输出银行卡的卡号、密码、用户名、余额。2存款,实现的方法就是把银行卡的余额+X×100,〔X为正整数,约束条件为存款金额大于100小于10000。3取款,实现的方法就是把银行卡的余额-X×100,〔X为正整数,约束条件为取款金额不大于存款金额且不大于5000。4密码修改,实现的方法就是把银行卡的密码修改。首先要输入原密码,如果原密码输入错误,则修改密码失败,成功后需要用户输入新密码两次,如果两次密码一致则修改成功,否则密码修改失败。5退卡,使用exit〔函数退出程序3源程序1.#!/usr/bin/python2.#-*-coding:utf-8-*-3.#author:张也白PythonVersion:3.44.importos5.6.classDepositCard:7.cardID=08.cardPWD='123456'9.balance=010.userName='0000'11.def__init__:12.self.cardID=cardID13.self.cardPWD=cardPWD14.self.userName=userName15.self.balance=balance16.17.classATM:18.defdeposite:#存款19.divide<>20.info="存款\n"21.print>22.cash=input<"提示:存款金额为100的倍数,金额要求在100-10000之间\n">23.ifint%100==0andint>0andint<=10000:24.card.balance+=int25.info="存款成功\n"26.print>27.print<"\nThebalanceofthecard:%d"%card.balance>28.else:29.info="存款失败\n"30.print>31.divide<>32.33.defwithdraw:#取款34.divide<>35.info="取款\n"36.print>37.options={1:'100',2:'200',3:'500',4:'其他金额'}38.forainoptions.items<>:39.print40.choice=input<'请选择:'>41.if==1orint==2>andcard.balance>=int*100:42.43.card.balance-=int*10044.info="取款成功\n"45.print>46.elifint==3andcard.balance>=500:47.card.balance-=50048.info="取款成功\n"49.print>50.elifint==4:51.cash=input<"\n提示:取款金额为100的倍数,且总额不超过5000元\n请52.输入你要取的金额:">53.ifint>=100andint<=5000:54.ifint%100==0andcard.balance>=int:55.card.balance-=int56.info="取款成功\n"57.print>58.else:59.print<'输入错误或卡内余额不足'>60.else:61.print<'输入错误或卡内余额不足'>62.else:63.print<'输入错误或卡内余额不足'>64.65.66.print<"\n\nThebalanceofthecard:%d"%card.balance>67.divide<>68.69.defmodify:#修改密码70.divide<>71.info="修改密码\n"72.print>73.inStr=input<'请输入原密码:'>74.ifinStr!=card.cardPWD:75.info="密码错误\n"76.print>77.else:78.newPWD1=input<'请输入新密码:'>79.newPWD2=input<'请再次输入新密码:'>80.ifnewPWD1==newPWD2:81.card.cardPWD=newPWD182.info="\n密码修改成功,请牢记你的新密码\n"83.print>84.else:85.info="\n密码不一致\n"86.print>87.divide<>88.89.defquery:#查询90.divide<>91.info="查询成功\n"92.print>93.print<'银行卡信息'.center<50>>94.print<'%-10s%-10s%-10s%-10s'%<'卡号','密码','姓名','余额'>>95.print<'%-11s%-11s%-11s%-11s'%,card.cardPWD,card.userNam96.e,str>>97.divide<>98.defrefundCard:#退卡99.divide<>100.print<'<假装把卡吐出来>'>101.print<'谢谢使用,请收好您的卡片'>102.divide<>103.defdivide<>:104.print<"\n--------------------------------------------------\n">105.definit<>:106.f=open<'D:\\a.txt','w'>107.info='''\108.1001123456张大白1000109.1002123456张二白2000110.1003123456张三白3000'''111.f.write112.f.close<>113.s=open<'D:\\a.txt','r'>114.print<'银行卡信息'.center<50>>115.print<'%-10s%-10s%-10s%-10s'%<'卡号','密码','姓名','余额'>>116.forlineins.readlines<>:117.foriinrange<0,4>:118.print<'%-11s'%line.split<>[i],end=''>119.ifi==3:120.print<>121.s.close122.divide<>123.return124.defcreateCard<>:125.choice=input<'请选择一张银行卡〔1~3:'>;126.ifint==1:127.newcard=DepositCard<1001,'123456','张大白',1000>128.login129.elifint==2:130.newcard=DepositCard<1002,'123456','张二白',2000>131.login132.elifint==3:133.newcard=DepositCard<1003,'123456','张三白',3000>134.login135.else:136.print<'输入有误,退出系统'>137.exit<>138.deflogin:139.divide<>140.print<'\n你插入了银行卡%s\n'%card.cardID>141.sum=0142.pwd=''143.whilepwd!=card.cardPWD:144.pwd=input<'\n请输入密码:'>145.sum+=1146.ifpwd==card.cardPWD:147.break148.else:149.print<'密码错误次数%d,请重新输入密码'%sum>150.ifsum>2:151.print<'\n密码错误次数过多,退出系统'>152.exit<>153.print<'\n密码正确,进入系统'>154.divide<>155.XiaoBaiATM=ATM<>156.menu157.defstart<>:158.divide<>159.print<"\t\t欢迎使用小白白ATM">160.divide<>161.init<>162.createCard<>163.defmenu:164.options={1:'查询账户信息',2:'存款',3:'取款',4:'修改密码',5:'退卡'}165.forainoptions.items<>:166.print167.choice=input<'\n请选择:'>168.ifint==1:169.XiaoBaiATM.query170.menu171.elifint==2:172.XiaoBaiATM.deposite173.menu174.elifint==3:175.XiaoBaiATM.withdraw176.menu177.elifint==4:178.XiaoBaiATM.modify179.menu180.elifint==5:181.XiaoBaiATM.refundCard182.else:183.print<'输入有误'>184.menu185.print<>186.defmain<>:187.start<>188.if__name__=="__main__":189.main<>4代码分析首先执行第X行,进行输入。然后在执行X行时跳转到第X行,运行第一个函数…然后运行第X行,到第X行时跳转到第X行执行第二个函数…接下来执行第X行…参考资料[1]xxxx〔参考资料格式:文章题目+点号+空格+网址+英文冒号+空格+网址[2]xxxxXX工程技术大学安全科学与工程学院2015/2016学年第二学期综合训练报告评分 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 综合训练题目:所在班级:项目 内容 财务内部控制制度的内容财务内部控制制度的内容人员招聘与配置的内容项目成本控制的内容消防安全演练内容 满分实评能力水平能熟练应用所学知识,有一定查阅文献及运用文献资料能力10理论依据充分,数据准确,公式推导正确10能应用计算机软件进行编程、资料搜集、排版、制图等10能体现创造性思维,或有独特见解10成果质量模型正确、合理,各项技术指标符合要求。15摘要叙述简练完整,假设合理、问题分析正确、用语准确、结论严谨合理;问题处理科学、条理分明、语言流畅、结构严谨、版面清晰25报告主要部分齐全、合理,符号统一、编号齐全。格式、绘图、表格、插图等规范准确,符合报告要求15正文字数不少于2000字,不超过15000字5总分100小组成员:指导教师评语:指导教师签名:年月日〔注:1.此页附在综合训练报告之后;2.综合成绩按百分比计算
本文档为【python模拟银行ATM程序的设计说明书】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: ¥22.0 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
is_529050
暂无简介~
格式:doc
大小:56KB
软件:Word
页数:9
分类:建设工程
上传时间:2022-01-31
浏览量:5