開發一個簡易ATM機
能實現的功能:
1,密碼超過3次沒有輸對程式死掉,取款失敗,2,密碼輸入正確後,顯示銀行卡里的可用餘額,輸入取款金額(金額至少是100起步,且只能是整百的取,金額不能超過1萬元),錢取了之後要自動計算出銀行卡里的剩餘金額。3,使用者可以存錢。 補充:密碼初始化自己定義(長度為6),可用餘額自己定義;
參考程式碼:
public class Atm {
public static void main(String[] args) { String pass = ""; // 儲存使用者輸入密碼 int outMoney = 0; // 取款金額 int inMoney = 0; // 存入金額 String password = "123456"; // 使用者密碼 int count = 0; // 記錄密碼輸入次數 boolean isPass = false; // 密碼是否通過驗證 double keyong = 3600.56;
Scanner input = new Scanner(System.in); System.out.println("-----歡-迎-來-到-中-國-銀-行-----\n"); while (count < 3 && !isPass) { System.out.print("請輸入您的密碼:"); pass = input.next(); if (!password.equals(pass)) { count++; continue; } else { isPass = true; // 密碼通過驗證 System.out.println("您已成功登陸!"); System.out.println("您的可用餘額是:" + keyong); System.out.println("請選擇您的操作(1,取款 2,存款):"); int choose = input.nextInt();// 記錄是取款還是存款 switch (choose) { case 1: System.out.print("請輸入取款金額:"); outMoney = input.nextInt(); while (outMoney > 0) { if (outMoney > keyong) { System.out.print("餘額不足,請重新輸入:"); outMoney = input.nextInt(); continue; // 繼續讓使用者輸入金額 } else if (outMoney <= 10000 && outMoney % 100 == 0) { System.out.println("您取了" + outMoney + "元"); System.out.println("您的銀行卡里還剩:" + (keyong - outMoney)); System.out.println("交易完成,請取卡!"); break; // 完成交易,退出 } else { System.out.print("您輸入的金額不合法,請重新輸入:"); outMoney = input.nextInt(); continue; // 繼續讓使用者輸入金額 } } System.out.println("您輸入的金額沒有大於0,交易失敗!請取卡"); break; case 2: System.out.println("請輸入存款金額:"); inMoney = input.nextInt(); while (inMoney > 0) { if (inMoney <= 10000 && inMoney % 100 == 0) { System.out.println("您存入了" + inMoney + "元"); System.out.println("您的銀行卡里的可用餘額現在是:" + (keyong + inMoney)); System.out.println("交易完成,請取卡"); break; } else { System.out.print("您存入的金額不合法,請重新輸入:"); inMoney = input.nextInt(); continue; // 繼續讓使用者輸入金額 } } break; default: System.out.println("您選擇的操作不存在,請輸入1或者2:"); break; } }
} if (!isPass) { // 使用者輸入了3次錯誤密碼 System.out.print("您已超過三次密碼輸入錯誤,請取卡!"); }
}
}