java專案實訓ATM存款機

2020-09-22 12:00:44

作業一: ATM存取款機的設計與實現

使用控制檯進行資料輸入和顯示,當輸入給定的卡號和密碼(初始卡號和密碼為123456)時,系統能登入ATM櫃員機系統,使用者可以按照以下四個功能進行:

(1)、查詢餘額:初始餘額為10000元

(2)、ATM取款:每次取款金額為100的倍數,總額不超過5000元,支取金額不允許透支。

(3)、ATM存款:不能出現負存款。

(4)、修改密碼:新密碼長度不小於6位,不允許出現6位完全相同的情況,只有舊密碼正確,新密碼符合要求,且兩次輸入相同的情況下才可以成功修改密碼。

import java.util.*;
public class ATM {
	      Scanner sr=new Scanner(System.in);
    	  int money=10000;
    	  String mima="123456";
    	  String zhanghao="123456";
    	  void cxye(int money){
          System.out.println("您的賬戶餘額是"+money);    		  
    	  } 
    	  void cunkuan(int exist)
    	  {
    		  this.money=exist+this.money;
    		  System.out.println("成功存入"+exist+"元,當前餘額為"+this.money+"元");
    	  }
    	  void qukuan(int get){
    		  while(get%100!=0){
    			  System.out.println("對不起,取款的金額應為100元的倍數,請重新輸入取款金額:");
    			  int qk=sr.nextInt();
    			  get=qk;
    		  }
    		  while(get>5000){
    			  System.out.println("對不起,單筆交易應小於5000元,請重新輸入取款金額:");
    			  int qk=sr.nextInt();
    			  get=qk;
    		  }
    		  while(get>this.money)
    		  {
    			  System.out.println("對不起,您的餘額不足,請重新輸入您的取款金額:");
    			  int qk=sr.nextInt();
    			  get=qk;
    		  }
    		  this.money=this.money-get;
    		  System.out.println("取款成功!當前餘額為"+this.money+"元");
    	  }
    	 
    	   int qrmm(String ysmm){
    	     if(ysmm.equals(this.mima))
    	     {
    	    	 System.out.println("密碼輸入正確!");
    	    	 return 1;
    	    	 
    	     }
    	     else  {System.out.println("密碼輸入錯誤請重新輸入!");
    	     return 0;}
    	   }
    	   
    	   
    	   void xmm(String xmima){
    		   this.mima=xmima;
    		   System.out.println("恭喜你密碼修改成功!");
    	   }
       

	public static void main(String[] args) {
		// TODO Auto-generated method stub
         ATM p1= new ATM();
         String srmima;
         Scanner sr=new Scanner(System.in);
         System.out.println("請輸入你的卡號:");
         p1.zhanghao=sr.nextLine();
         System.out.println("請輸入你的密碼:");
         srmima=sr.nextLine();
 
          int yz=p1.qrmm(srmima);
         while(yz!=1)
         {
        	 System.out.println("請輸入你的密碼:");
             srmima=sr.nextLine();
              yz=p1.qrmm(srmima);
        	 
         }
         System.out.println("使用者登入正常");
         
         
         System.out.println("您要輸入的指令如下,輸入相應的數位即可");
         System.out.println("1.查詢餘額");
         System.out.println("2.取款");
         System.out.println("3.存款");
         System.out.println("4.修改密碼");
         System.out.println("0.取卡");
         int zhiling=sr.nextInt();
         while(zhiling!=0)
         {
         if(zhiling==1)
         {
        	 p1.cxye(p1.money);
         }
         else if(zhiling==2)
         {
        	 System.out.print("請輸人您的取款金額:");
        	 int get=sr.nextInt();
             p1.qukuan(get); 	 
         }
         
         else if(zhiling==3)
         {
        	 System.out.print("請輸人您的存款金額:");
        	 int exist=sr.nextInt();
        	 p1.cunkuan(exist);
         }
         
         
         else if(zhiling==4)
         {
       	 System.out.println("請輸入您的新密碼");
       	 
         String xmima=sr.nextLine();
      	 p1.xmm(xmima);
         }
         
         
         
        System.out.println("如需繼續操作,請輸入指令:");
        System.out.println("1.查詢餘額");
        System.out.println("2.取款");
        System.out.println("3.存款");
        System.out.println("4.修改密碼");
        System.out.println("0.取卡");
          zhiling=sr.nextInt();
         }
         
         System.out.println("合作愉快,歡迎下次光臨,再見!");
	}
	
	

}