Java实现ATM取款机程序

本文实例为大家分享了Java实现ATM取款机程序的具体代码,供大家参考,具体内容如下

对象说明:

功能:该程序的功能为实现模拟银行ATM自动取款机取款,存款,查询余额,转账等功能,只是完成了基本的功能。

思路:第一、登录判断,密码限制三次,使用for循环。第二、成功登录,选择相应的功能,使用switch语句。第四、实现功能的反复循环操作,因为次数不确定,使用while结构。第五、对每个功能模块进行填充完善。

代码展示:

import java.util.Scanner;

public class BankATM {

public static void main(String[] args) {

Scanner input = new Scanner(System.in);

String cardNum = "6228123123"; // 卡号

int pwd = 888888; // 密码

boolean flag = true; // 声明布尔类型变量

double surplus = 1000;// 余额

// 界面

System.out.println("---------欢迎使用工商银行ATM机---------");

/** 用于进行登录的次数限制止 **/

for (int i = 1; i <= 3; i++) {

System.out.println("请插入您的银行卡:");

String inputCard = input.next();

System.out.println("请输入您的密码:");

int inputPwd = input.nextInt();

// 验证账号和密码

if (inputCard.equals(cardNum) && inputPwd == pwd) {

flag = true;

break;

} else {

if (i <= 2) {

System.out.println("对不起,密码输入不正确,你还有" + (3 - i) + "次机会!");

} else {

System.out.println("对不起,您的卡已被锁定!");

break;

}

flag = false;

}

}

/** 登录成功后选择功能 */

if (flag) {

char answer = 'y';

while (answer == 'y') {

System.out.println("请选择功能:1.取款 2.存款 3.查询余额 4.转账 5.退出");

int choice = input.nextInt();

switch (choice) {

case 1:

// 执行取款操作

System.out.println("--->取款");

System.out.println("请输入取款金额:");

double getMoney = input.nextDouble();

if (getMoney > 0) {

if (getMoney <= surplus) {

if (getMoney % 100 == 0) {

System.out.println("请取走您的钞票!余额为¥" + (surplus - getMoney));

} else {

System.out.println("对不起,不能取零钱!");

}

} else {

System.out.println("对不起,余额不足!");

}

} else {

System.out.println("请输入正确的金额:");

}

break;

case 2:

// 执行存款操作

System.out.println("--->存款");

System.out.println("请把钞票整理后放入存钞口:");

double saveMoney = input.nextDouble();

if (saveMoney > 0 && saveMoney <= 10000) {

if (saveMoney % 100 == 0) {

surplus += saveMoney;

System.out.println("存款成功!余额为¥" + surplus);

} else {

double backMoney = saveMoney % 100;

surplus = saveMoney + surplus - backMoney;

System.out.println("存款成功!余额为¥" + surplus);

System.out.println("请取走零钱¥" + backMoney);

}

} else if (saveMoney > 10000) {

System.out.println("一次最多存入一万元,请分批存入!");

} else {

System.out.println("存入的钞票是假钞,无效没收!");

}

break;

case 3:

// 执行查询余额

System.out.println("--->查询余额");

System.out.println("您卡上的余额是:" + surplus);

break;

case 4:

// 执行转账操作

System.out.println("--->转账");

System.out.println("请输入转账金额:");

double goMoney = input.nextDouble(); // 转账金额

if (goMoney > 0) {

if (goMoney <= surplus) {

System.out.println("转账成功!余额为¥" + (surplus - goMoney));

} else {

System.out.println("对不起,请确保卡上有足够的余额!");

}

} else {

System.out.println("转账失败!请输入正确的金额:");

}

break;

case 5:

// 执行退出操作

// System.out.println("--->退出");

System.out.println("谢谢您的使用!");

return;

default:

System.out.println("对不起,您选择的功能有误!");

break;

}// switch end

System.out.println("继续吗?y/n");

answer = input.next().charAt(0);

} // while end

System.out.println("谢谢您的使用!");

}

}

}

效果截图:

以上是 Java实现ATM取款机程序 的全部内容, 来源链接: utcz.com/z/354642.html

回到顶部