ATM机具有存款,取款,查看明细,退出功能,并具有输错三次密码,冻结账户的功能。
参考思路:
用一个class 用作主程序,两个class用做被调用,其中一个class用作用户登录界面,另一个class用来操作界面。
用while来控制输入几次,才会冻结密码。
内部嵌套一个if来控制密码是否正确。同样也用if来控制调用操作界面class的回传值是否是哪一个操作。
用一个if来控制取款金额是否大于实际存有金额。
import java.util.Scanner;
Scanner sc=new Scanner (System.in);用来进行输入操作。
有没有大佬可以帮帮我求求了

用java设计一个ATM机程序
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- 香鱼嫩虾 2021-11-11 16:50关注
package ATM; /** * 主程序 * @author 怦九 * @date 2021/11/11 */ public class Main { public static void main(String[] args) { if(Login.login()){ Operation.opertion(); } } }
package ATM; import java.util.Scanner; /** * 登录界面 * @author 怦九 * @date 2021/11/11 */ public class Login { //初始密码 private static String PAWSSWORD = "123456"; //是否被冻结 public static boolean isFrozen; private static Scanner sc = new Scanner(System.in); public static boolean login(){ if(isFrozen){ System.out.println("密码已被冻结"); return false; } System.out.println("--------欢迎来到登录界面--------"); int count = 0; while(count < 3){ System.out.println("请输入密码:"); if(sc.next().equals(PAWSSWORD)){ System.out.println("密码正确"); return true; } count ++; System.out.println("密码输入错误,还剩"+(3-count)+"次机会"); } //密码冻结 isFrozen = true; System.out.println("输入密码错误3次,密码已被冻结"); return false; } }
package ATM; import java.util.Scanner; /** * 操作界面 * @author 怦九 * @date 2021/11/11 */ public class Operation { //账户金额,即余额 private static double amount = 100; private static Scanner sc = new Scanner(System.in); public static void opertion() { System.out.println("--------欢迎来到操作界面--------"); while(true){ System.out.println("--------请选择功能--------"); System.out.println("------1.存款--------"); System.out.println("------2.取款--------"); System.out.println("------3.查看明细-----"); System.out.println("------0.退出程序-----"); int select = sc.nextInt(); switch (select){ case 1: System.out.println("请输入你要存的金额"); double money1 = sc.nextDouble(); amount+= money1; System.out.println("存款成功"); break; case 2: System.out.println("请输入你要取的金额"); double money2 = sc.nextDouble(); if(amount >= money2){ amount-= money2; System.out.println("取款成功"); }else { System.out.println("余额不足"); } break; case 3: System.out.println("当前余额为:"+amount); break; case 0: System.out.println("欢迎使用,下次再会"); System.exit(0); break; } } } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报