package duzhaonan;
import java.util.Scanner;
import javax.swing.JOptionPane;
class Account{//创建的账户类
String biaoshifu,name,date,password;
double ye;
Account(String a,String b,String c,String d,double e){
biaoshifu=a;
name=b;
date=c;
password=d;
ye=e;
}
Account(){
biaoshifu="1";
name="1";
date="2016/11/11";
password="123456";
ye=10;
}
public void qukuan(){//取款
int i=0;
String s=JOptionPane.showInputDialog("取款!从100、500、1000、1500、2000、5000、0(其他金额)"
+ "、#(退卡)、*(返回操作)中选择输入一项");
switch(s){
case "100":i=100;break;
case "500":i=500;break;
case "1000":i=1000;break;
case "1500":i=1500;break;
case "2000":i=2000;break;
case "5000":i=5000;break;
case "0":{String s1=JOptionPane.showInputDialog("输入需要取款数额");
i=Integer.parseInt(s1);};break;
case "#":tuika();break;
case "*":break;
}
if((ye-i)>=0){
ye=ye-i;
JOptionPane.showMessageDialog(null, "取款成功!您的余额为 " + ye, "Results",
JOptionPane.PLAIN_MESSAGE );}
else
JOptionPane.showMessageDialog(null, "余额不足,取款失败!", "Results",
JOptionPane.PLAIN_MESSAGE );
tuika();//退卡
}
public void cunkuan(){//存款
String s1=JOptionPane.showInputDialog("输入需要存款数额");
int i=Integer.parseInt(s1);
ye=ye+i;
JOptionPane.showMessageDialog(null, "存款成功!您的余额为 " + ye,
"Results",JOptionPane.PLAIN_MESSAGE );
}
public void zhuanzhang(){//转账
String s1=JOptionPane.showInputDialog("输入对方账号");
if(cunzai(s1)==1){
String S=JOptionPane.showInputDialog("输入转账金额");
int i=Integer.parseInt(S);
if((ye-i)>=0){
ye=ye-i;
JOptionPane.showMessageDialog(null, "转账成功!您的余额为 " + ye,
"Results",JOptionPane.PLAIN_MESSAGE );
}
else
JOptionPane.showMessageDialog(null, "余额不足,取款失败!", "Results",
JOptionPane.PLAIN_MESSAGE );

}
else
JOptionPane.showMessageDialog(null, "账户不存在 " , "Results",JOptionPane.PLAIN_MESSAGE );

}
public static void tuika(){//执行退卡操作
}
public int cunzai(String s){//连接数据库判断账号是否存在
int i=1;
return i;
}
}
public class ATM {
public static void main(String[] args){
Account a=new Account();
String s="*****************************************\n";
s=s+" 模拟银行ATM系统 \n";
s=s+"*****************************************\n";
s=s+" 1、存款\n";
s=s+" 2、取款\n";
s=s+" 3、转账\n";
s=s+" 4、输入4结束\n";
do{
String str=JOptionPane.showInputDialog(s);
int i=Integer.parseInt(str);
if(i==1)
a.cunkuan();
else if(i==2)
a.qukuan();
else if(i==3)
a.zhuanzhang();
else
break;
}while(true);
}

}

ATM的更多相关文章

  1. 设计模式(十二):通过ATM取款机来认识“状态模式”(State Pattern)

    说到状态模式,如果你看过之前发布的重构系列的文章中的<代码重构(六):代码重构完整案例>这篇博客的话,那么你应该对“状态模式”并不陌生,因为我们之前使用到了状态模式进行重构.上一篇博客我们 ...

  2. ATM+购物车

    本次代码的实现用到了模块间的互相调用,这对于初学者而言有些难度,不过这也是我们必须要掌握的,在以后的大程序中,多个模块会让我们的代码看起来简洁明了,易排错 (本次代码只是简单的实现的基本的功能,其代码 ...

  3. 简单的ATM取款过程

    一个简单的ATM的取款过程是这样的:首先提示用户输入密码(pwd),最多只能输3次,超过三次则提示用户“密码已输入三次错误,请取卡.“结束交易.如果用户密码正确,在提示用户输入金额(money),AT ...

  4. 大话JS面向对象之开篇万物皆对象------(ATM取款机引发的深思)

    一,总体概要 OO(面向对象)概念的提出是软件开发工程发展的一次革命,多年来我们借助它使得很多大型应用程序得以顺利实现.如果您还没有掌握并使用OO进行程序设计和开发,那么您无疑还停留在软件开发的石器时 ...

  5. ATM模拟器(附代码及运行结果)

    源代码: import java.util.Scanner; class Account{ String identify; String name; String date; String key; ...

  6. bzoj 1179[Apio2009]Atm (tarjan+spfa)

    题目 输入 第一行包含两个整数N.M.N表示路口的个数,M表示道路条数.接下来M行,每行两个整数,这两个整数都在1到N之间,第i+1行的两个整数表示第i条道路的起点和终点的路口编号.接下来N行,每行一 ...

  7. ATM跨行取款的清算方式

    ATM跨行取款和POS机是类似的,因为没有商户参与,所以不需要收单清算,过程更为简单. 回到文章最开头的例子:你拿着一张工行卡去建行的ATM取了100元,这个跨行业务在CNAPS体系中的过程如下: 你 ...

  8. 工行ATM转账——事务操作

    今儿去工行ATM给已朋友转账,遇到这么个情况: 选择对外转账后输入转入账号(输入两次),接着提示输入转入金额(输入一次金额),按确定,系统提示交易中,3秒左右,提示“输入账号无效”,系统自动中断了操作 ...

  9. python之ATM

    每次做一点就发出来,大神不要嫌重复 2016/11/4 今天来搞ATM,反正逃不了的,说来惭愧,这个作业是我10/4号20天前拿到的,当时是万脸蒙比的,今天又做了一点,现在算是百脸蒙比吧. 一.需求: ...

随机推荐

  1. BZOJ 2716: [Violet 3]天使玩偶

    2716: [Violet 3]天使玩偶 Time Limit: 80 Sec  Memory Limit: 128 MBSubmit: 1473  Solved: 621[Submit][Statu ...

  2. Web Application Penetration Testing Local File Inclusion (LFI) Testing Techniques

    Web Application Penetration Testing Local File Inclusion (LFI) Testing Techniques Jan 04, 2017, Vers ...

  3. 现在有哪些浏览器的哪些版本支持 HTML5

    现在有哪些浏览器的哪些版本支持 HTML5 1.IE IE9支持部分 IE10+支持2.Firefox Firefox3.5,3.6支持大部分 Firefox4.0+支持3.Chrome Chrome ...

  4. PL/0编译器实践---后记

    花了几天时间,把清华版的<编译原理>一书中的PL/0编译器实践了一遍.颇有收获,记录如下: 理解代码的技巧,如何理解一份代码,比如这个程序,其逻辑相对于一般程序就比较复杂了,如何翻译,虚拟 ...

  5. Codeforces Round #384 (Div. 2) B. Chloe and the sequence(规律题)

    传送门 Description Chloe, the same as Vladik, is a competitive programmer. She didn't have any problems ...

  6. Python学习笔记(1)

    001 #通过bat命令运行pyhon py文件,并将结果输出到txt文件.# D:\ResearchContent\Exercise_Programm\Start\Start.py>C:\Us ...

  7. 二维码相关---java生成二维码名片,并且自动保存到手机通讯录中...

    http://blog.csdn.net/lidew521/article/details/24441825

  8. 使用django开发博客过程记录1——数据库设计

    1.数据库设计 2.插入测试数据 3.配置相关问题 1.数据库设计 数据库有简单的三张表:Article.Category.Tag以下是代码 # -*- coding:utf-8 -*- from _ ...

  9. UNIX下的LD_PRELOAD环境变量

    UNIX下的LD_PRELOAD环境变量 也许这个话题并不新鲜,因为LD_PRELOAD所产生的问题由来已久.不过,在这里,我还是想讨论一下这个环境变量.因为这个环境变量所带来的安全问题非常严重,值得 ...

  10. highcharts去掉版权|去掉水印链接(右下角)_

    credits: {                      enabled: false                  }