加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

ATM程序代码及心得

(2009-08-19 08:15:55)
标签:

杂谈

    今天老师带大家一起做了个ATM取款机的操作代码,通过两堂课的编写,并通过亲自动手来做,从中收益不少````以下是代码部分:

import java.util.Scanner;

public class Atm {

 Scanner sc = new Scanner(System.in);
 
 int dollar = 10000;
 
 int rmb = 10000;
 
 int type;
 
 
 public int input(){
  return sc.nextInt();
 }
 
 
 public boolean checkPass(){
  int count = 0, pass;
  while(count < 3){
   System.out.print("请输入密码: ");
   pass = input();
   count ++;
   
   if(pass == 12345){
    return true;
   }else{
    System.out.println("密码错误!\n");
   }
  }
  return false;
 }
 
 
 public void query(){
  do{
   System.out.print("请选择你的账户类型:1、美元 2、人民币");
   type = input();
   switch(type){
   case 1:System.out.print("Your account has $" + dollar);break;
   case 2:System.out.print("你的账户有¥" + rmb);break;
   default:System.out.print("无此账户类型!\n");
   }
  }while(type != 1 && type != 2);
 }
 
 
 public void fetch(){
  int money;
  do{
   System.out.print("请选择你的账户类型:1、美元 2、人民币");
   type = input();
   switch(type){
   //美元
   case 1:
    if(dollar == 0){
     System.out.print("Your account is not enough!\n");
     return;
    }else{
     do{
      System.out.print("Input how much you will fetch: ");
      money = input();
      if(money < 0){
       System.out.print("Input Error! \n");
      }else if(money > dollar){
       System.out.print("Your account is not enough!\n");
      }
     }while(money < 0 || money >dollar);
     dollar -= money;
     System.out.print("Take care of your money! ");
    }
    break;
    
   //人民币
   case 2:
    if(rmb == 0){
     System.out.print("你的帐户余额不足!\n");
     return;
    }else{
     do{
      System.out.print("请输入你的取款金额: ");
      money = input();
      if(money < 0){
       System.out.print("输入错误,请重新输入! \n");
      }else if(money > rmb){
       System.out.print("你的帐户余额不足!\n");
      }
     }while(money < 0 || money >rmb);
     rmb -= money;
     System.out.print("请收好你的钱! ");
    }
    break;
    
   default:System.out.print("无此账户类型!\n");
   }
  }while(type != 1 && type != 2);
 }
 
 
 public void process(){
  if(checkPass()){
   do{
    //选择:1、查询 2、取钱
    do{
     System.out.print("请输入你的操作项:1、查询 2、取钱  ");
     type = input();
     switch(type){
     case 1: query();break;
      
     case 2:fetch();break;
      
     default:System.out.println("无此项操作,请重新输入!\n");
     }
    }while(type != 1 && type != 2);
    
    //选择:1、继续 2、离开
    do{
     System.out.print("\n请输入你的操作项:1、继续 2、离开  ");
     type = input(); 
    }while(type != 1 && type != 2);
    
   }while(type == 1);
   System.out.print("谢谢使用!  ");
  }else{
   System.out.println("三次密码输入错误,吞卡。。。");
  }
 }
 
 public static void main(String[] args) {
  new Atm().process();
 }
}
     以上代码完成了ATM机的查询与取款过程,通过自己选择可以轻松完成取款操作```

通过本次实训课,学会了分析问题的流程与方法,并能够通过分析处理一些编程过程出现的bug.相信对以后的编程又多了些帮助``

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有