java面向对象编程之前的最后一次结构化编程:ATM代码

来源:互联网 发布:打码软件赚钱 编辑:程序博客网 时间:2024/06/02 05:06


ATM简易规则如下:

0.定义规定值
①账号②密码③余额(double)④ATM机最大值⑤ATM机余额⑥每次取钱最大值

1.登录(共3次机会)若3次错误吞卡

2.欢迎界面

3.菜单 1.查询余额 2.取钱 3.存钱 4.改密码 5.退出

改密码后,重新进入登录界面

4.取钱规则:①取的金额不能小于0
②取的金额不能大于你的余额
③每次取钱最大值
④小于ATM机余额
⑤必须是100的倍数
注意:取钱后提示用户是否继续取钱

5.存钱规则:①存的金额必须是100的倍数
②存的金额+ATM机余额<ATM机最大值
注意:存钱后提示用户是否继续存钱


代码实现如下:

import java.util.Scanner;


public class ATM {
public static void main(String[] args){
Scanner input=new Scanner(System.in);
String account="abc",passWord="123";
double cardRemainingSum=2000,atmRemainingSum=50000;
int maxEveryTime=5000,maxOfAtm=500000;
String passWordInput=null,newPassWord=null,newPassWord2=null;
int count=3;
while(true){
System.out.println("请输入您的密码:");
passWordInput=input.next();
if(passWordInput.equals(passWord)){
break;
}
count--;
if(count==0){
System.out.println("密码输错三次,已吞卡");
break;
}
System.out.println("密码错误,还有"+count+"次输入机会");
}
while(passWordInput.equals(passWord)){
System.out.println("欢迎使用本ATM");
System.out.println("1.余额查询");
System.out.println("2.取款");
System.out.println("3.存钱");
System.out.println("4.改密");
System.out.println("5.退出");
System.out.println("请选择(1-5):");
int choice=input.nextInt();
if(choice==1){
System.out.println(cardRemainingSum);
}else if(choice==2){
while(true){
System.out.println("请输入取款金额:");
int cash=input.nextInt();
if(cash%100!=0||cash>maxEveryTime){
System.out.println("输入错误或超过单次取款上限,请重新输入");
}else{
if(cash>cardRemainingSum){
System.out.println("卡上余额不足,请确认后重新输入");
break;
}else if(cash>atmRemainingSum){
System.out.println("取款金额超过ATM机内余额,请到柜台办理业务……");
break;
}else{
System.out.print("取款成功!");
break;
}
}
}
}else if(choice==3){
int inputNum=0;
while(true){
System.out.println("请输入存款金额:");
inputNum=input.nextInt();
if(inputNum%100!=0){
System.out.println("输入错误,请重新输入");
}else{
 if(inputNum+atmRemainingSum>maxOfAtm){
 System.out.println("存款超过ATM存储上限,请到柜台办理相关业务……");
 break;
 }else{
 System.out.println("存款成功!");
 break;
 }
}
}
}else if(choice==4){
while(true){
System.out.println("请输入您的新密码:");
newPassWord=input.next();
System.out.println("请再次输入新密码:");
newPassWord2=input.next();
if(newPassWord.equals(newPassWord2)){
 System.out.println("修改密码成功!");
 break;
}
System.out.println("两次输入不一致,请重新输入");
}

}else if(choice==5){
break;
}else {
System.out.println("输入错误,请重新输入");
}

System.out.println("是否继续?(y继续 n退出):");
String choice1=input.next();
if(choice1.equals("n")){
break;
}
}
System.out.println("系统退出……");

input.close();
}
}

0 0