ATM源码
package atm;//张秋亮,信1705-3,20173529
public class Account
{
private String accountID;
private String accountname;
private String operatedate;
private int operatetype;
private String accountpassword;
private int accountbalance;
private int amount;
public void setaccountID(String a)
{
accountID=a;
}
public void setaccountname(String b)
{
accountname=b;
}
public void setoperatedate(String c)
{
operatedate=c;
}
public void setoperatetype(int d)
{
operatetype=d;
}
public void setaccountpassword(String e)
{
accountpassword=e;
}
public void setaccountbalance(int f)
{
accountbalance=f;
}
public void setamount(int g)
{
amount=g;
}
public String getaccountID()
{
return accountID;
}
public String getaccountname()
{
return accountname;
}
public String getoperatedate()
{
return operatedate;
}
public int getoperatetype()
{
return operatetype;
}
public String getaccountpassword()
{
return accountpassword;
}
public int getaccountbalance()
{
return accountbalance;
}
public int getamount()
{
return amount;
}
public Account() {}
public void menu(int i)
{
System.out.println("***************************************************************");
System.out.println(" 欢迎"+i+"使用中国工商银行自助柜员系统");
System.out.println("***************************************************************");
System.out.println(" 输入您的密码:");
System.out.println("***************************************************************");
}
public void menu0()
{
System.out.println("***************************************************************");
System.out.println(" 欢迎使用中国工商银行自助柜员系统");
System.out.println("***************************************************************");
System.out.println(" 输入您的账号:");
System.out.println("***************************************************************");
}
public void menu1(int i)
{
System.out.println("***************************************************************");
System.out.println(" 欢迎"+i+"(账户名称)使用中国工商银行自助柜员系统");
System.out.println("***************************************************************");
System.out.println(" 1.存款");
System.out.println(" 2.取款");
System.out.println(" 3.转账汇款");
System.out.println(" 4.修改密码");
System.out.println(" 5.查询余额");
System.out.println("***************************************************************");
}
public void menu2(int i)
{
System.out.println("***************************************************************");
System.out.println("欢迎"+i+"(账户名称)使用中国工商银行自助柜员系统");
System.out.println("****************************************************************");
System.out.println("请输入存款金额;");
System.out.println("****************************************************************");
}
public void cun(double m,int i)
{
System.out.println("***************************************************************");
System.out.println("欢迎"+i+"使用中国工商银行自助柜员系统");
System.out.println("****************************************************************");
System.out.println("当前账户存款操作成功。");
System.out.println("当前账户余额为:"+m+"元");
System.out.println("****************************************************************");
}
public void qu(int i)
{
System.out.println("***************************************************************");
System.out.println("欢迎"+i+"使用中国工商银行自助柜员系统");
System.out.println("****************************************************************");
System.out.println("当前账户每日可以支取 2 万元。");
System.out.println("1. 100");
System.out.println("2. 500");
System.out.println("3. 1000");
System.out.println("4. 1500");
System.out.println("5. 2000");
System.out.println("6. 5000");
System.out.println("7. 其他金额 ");
System.out.println("8. 退卡 ");
System.out.println("9. 返回");
System.out.println("****************************************************************");
}
public void zhuan(int i)
{
System.out.println("*************************************************************** ");
System.out.println("欢迎 "+i+"使用中国工商银行自助柜员系统 ");
System.out.println("**************************************************************** ");
System.out.println("请输入转账账户; ");
System.out.println("**************************************************************** ");
}
public void jine(int i)
{
System.out.println("*************************************************************** ");
System.out.println("欢迎"+i+" 使用中国工商银行自助柜员系统 ");
System.out.println("*************************************************************** ");
System.out.println("请输入转账金额; ");
System.out.println("*************************************************************** ");
}
public void mima(int i)
{
System.out.println("*************************************************************** ");
System.out.println("欢迎"+i+" 使用中国工商银行自助柜员系统 ");
System.out.println("*************************************************************** ");
System.out.println("请输入当前密码: ");
System.out.println("请输入修改密码: ");
System.out.println("请输入确认密码: ");
System.out.println("*************************************************************** ");
}
}
Account.java
package atm;
import java.util.Scanner;
import java.util.ArrayList;
public class AccountManager
{
public static void main(String[] args) {
Account account = new Account ();
double m=0;
int i=0;
int k=0;
int j=0;
String l="";
Scanner in=new Scanner(System.in);
boolean ture = false;
while(!ture)
{
do
{
account.menu0();
i=in.nextInt();
while(i<10000000||i>99999999)
{
System.out.println(" 该卡不是工行卡 ");
System.out.println(" 重新输入您的账号");
i=in.nextInt();
}
account.menu(i);
for(k=0;k<3;k++)
{
j=in.nextInt();
if(j>100000&&j<999999)
{
k=5;
break;
}
else if(j<100000||j>999999)
{
System.out.println("密码输入错误");
}
else if(j==888888)
{
System.out.println("密码输入错误");
}
}
if(k==3)
{
System.out.println("该账号三次录入密码错误,该卡已被系统没收,请与工行及时联系处理");
}
}while(k!=5);
do
{
account.menu1(i);
l=in.next();
switch(l){
case "1":
{
account.menu2(i);
m=in.nextDouble();
while(m<0||m-(int)m>0.00001)
{
System.out.println("输入金额有误");
account.menu2(i);
m=in.nextInt();
}
account.cun(m,i);
};break;
case "2":
{
account.qu(i);
int n;
n=in.nextInt();
switch(n)
{
case 1:
{
if(m<100)
System.out.println("账户余额不足");
else
m=m-100;
};break;
case 2:{
if(m<500)
System.out.println("账户余额不足");
else
m=m-500;
};break;
case 3:{
if(m<1000)
System.out.println("账户余额不足");
else
m=m-1000;
};break;
case 4:{
if(m<1500)
System.out.println("账户余额不足");
else
m=m-1500;
};break;
case 5:{
if(m<2000)
System.out.println("账户余额不足");
else
m=m-2000;
};break;
case 6:{
if(m<5000)
System.out.println("账户余额不足");
m=m-5000;
};break;
case 7:{
System.out.println("*************************************************************** ");
System.out.println("欢迎"+i+" 使用中国工商银行自助柜员系统");
System.out.println("**************************************************************** ");
System.out.println("请输入取款金额:");
System.out.println("**************************************************************** ");
int jin;
jin=in.nextInt();
if(m<jin)
System.out.println("账户余额不足");
else
m=m+jin;
};break;
case 8:account.menu0();;break;
case 9:account.menu1(i);break;
}
}
case "3":{
account.zhuan(i);
int zhanghu;
zhanghu=in.nextInt();
account.jine(i);
int jine;
jine=in.nextInt();
if(m<jine)
System.out.println("账户余额不足");
else
{
System.out.println("*************************************************************** ");
System.out.println("欢迎"+i+"使用中国工商银行自助柜员系统 ");
System.out.println("**************************************************************** ");
System.out.println("请确认是否向"+zhanghu+"转账"+jine+"元");
System.out.println("当前账户余额为:"+(m-jine)+" 元 ");
}
};break;
case "4":{
account.mima(i);
int ymi,nmi,nmi2;
ymi=in.nextInt();
nmi=in.nextInt();
nmi2=in.nextInt();
if(ymi==j)
{
if(nmi==nmi2)
{
System.out.println("***************************************************************");
System.out.println("欢迎 "+i+"使用中国工商银行自助柜员系统 ");
System.out.println("***************************************************************");
System.out.println("当前账户密码修改成功 ");
System.out.println("***************************************************************");
}
else
System.out.println("修改密码与确认密码不一致");
}
else
System.out.println("当前密码录入错误");
};break;
case "5":System.out.println("当前余额:"+m);break;
}
}while(l.charAt(0)!='q');
}
}
}
AccountManager.java
ATM源码的更多相关文章
- JAVA上百实例源码以及开源项目
简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级.中级.高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情.执着,对IT的憧憬. ...
- 2014年5月份第3周51Aspx源码发布详情
HGM简单连连看游戏源码 2014-5-19 [VS2010]源码描述:这是一款基于WinForm窗体程序的简单水果连连看的小游戏.界面比较美观, 功能如下:该游戏可以显示当前关卡,还有剩余时间.重 ...
- java开学考试有感以及源码
一.感想 Java开学测试有感 九月二十号,王老师给我们上的第一节java课,测试. 说实话,不能说是十分有自信,但还好,直到看见了开学测试的题目,之前因为已经做过了王老师发的16级的题目,所以当时还 ...
- Linux内核(2) - 分析内核源码如何入手(上)
透过现象看本质,兽兽们无非就是一些人体艺术展示.同样往本质里看过去,学习内核,就是学习内核的源代码,任何内核有关的书籍都是基于内核,而又不高于内核的. 既然要学习内核源码,就要经常对内核代码进行分析, ...
- JAVA上百实例源码网站
JAVA源码包1JAVA源码包2JAVA源码包3JAVA源码包4 JAVA开源包1 JAVA开源包2 JAVA开源包3 JAVA开源包4 JAVA开源包5 JAVA开源包6 JAVA开源包7 JAVA ...
- 【转】.NET(C#):浅谈程序集清单资源和RESX资源 关于单元测试的思考--Asp.Net Core单元测试最佳实践 封装自己的dapper lambda扩展-设计篇 编写自己的dapper lambda扩展-使用篇 正确理解CAP定理 Quartz.NET的使用(附源码) 整理自己的.net工具库 GC的前世与今生 Visual Studio Package 插件开发之自动生
[转].NET(C#):浅谈程序集清单资源和RESX资源 目录 程序集清单资源 RESX资源文件 使用ResourceReader和ResourceSet解析二进制资源文件 使用ResourceM ...
- Java设计模式:23种设计模式全面解析(超级详细)以及在源码中的应用
从网络上找的设计模式, 很全面,只要把UML类图看懂了, 照着类图将代码实现是很容易的事情. 步骤: 先看懂类图, 然后将代码实现, 之后再看文字 http://c.biancheng.net/des ...
- Linux 网卡驱动sk_buff内核源码随笔
这几天在调试有关网卡驱动的东西,有很多地方不清楚.有关网卡驱动部分主要有两个很重要的结构体:struct net_device 和struct sk_buff. 驱动大部分都是围绕这两个东西进行操作的 ...
- 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新
本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...
随机推荐
- Servlet中的初始化参数、上下文参数、以及@Resource资源注入
配置初始化参数.上下文参数.以及使用@Resource注解进行资源注入,目的是为了降低代码的耦合度.当项目需求进行变更的时候,不需要反复更改源代码,只需更改web.xml文件即可. 一:Servlet ...
- HDU 2899Strange fuction(模拟退火)
题意 题目链接 求 $F(x) = 6 * x^7+8*x^6+7*x^3+5*x^2-y*x (0 <= x <=100)$的最小值 Sol 强上模拟退火,注意eps要开大! /* */ ...
- Appium基础三:Appium实现原理
1.web自动化测试用的selenium webdriver 是c/s模式,server端和client端是通过webdriver protocol实现的,而Appium是参考selenium开发的, ...
- web端 复合控件 响应回发
AutoPostback="true"; 自动提交 RdiobuttonList 属性→设计→编辑项→{ Enabled 是否可用 selected 是否选中 Text ...
- UVA11090 Going in Cycle (二分+判负环)
二分法+spfa判负环.如果存在一个环sum(wi)<k*x,i=0,1,2...,k,那么每条边减去x以后会形成负环.因此可用spfa来判负环. 一般spfa判负环dfs最快,用stack次之 ...
- FreeRTOS_信号量
FreeRTOS信号量 信号量是操作系统总重要的一部分,信号量一般用来进行资源管理和任务同步,FreeRTOS中信号量又分为二值信号量.计数型信号量.互斥信号量和递归互斥信号量.不同的信号量其应用场景 ...
- [Java] 新手快速就业需要掌握的知识点
目的:主要是分享下日常工作中使用到的技术点,根据二八定律快速掌握使用知识点,先就业再沉淀去积累经验.(个人建议仅供参考) 背景:目前一般来说,都是前后端分离.你只需要提供接口给前端,他来处理就可以了, ...
- 使用控件的Tag属性传递信息
实现效果: 知识运用: Control类的Tag属性 //获取或设置包含 有关控件的数据的对象 public object Tag {get;set;} 实现代码: private void Form ...
- springboot超详细笔记
一.Spring Boot 入门 1.Spring Boot 简介 简化Spring应用开发的一个框架: 整个Spring技术栈的一个大整合: J2EE开发的一站式解决方案: 2.微服务 2014,m ...
- PAT (Basic Level) Practise (中文)- 1013. 数素数 (20)
http://www.patest.cn/contests/pat-b-practise/1013 令Pi表示第i个素数.现任给两个正整数M <= N <= 104,请输出PM到PN的所有 ...