ATM取款

1.输入密码
2.判断密码是否正确,如果错误,则判断错误的次数,如果大于3次,则流程结束,密码正确显示存款金额
3.输入取款金额,判断金额是否正确,如果正确则扣减相应的金额。
4.显示剩余金额,并询问是否继续取款,如果选择是则可以重新输入取款金额,否则结束取款流程

package com.dev.base.exercise.oct23;

import java.util.Scanner;

/**
 * @ClassName: Atm
 * @Description: TODO
 * @Author LHN
 * @Date 2019/6/20 22:14
 * @Version 1.0.0
 */
public class Atm {

    static double balance = 10000;
    static int count = 0;//密码错误次数

    public static void main(String[] args) {
        System.out.println("请输入取款密码:");
        pwd();
        if (count<3) {
            System.out.println("请输入取款金额:");
            money();
        }
    }

    public static void pwd() {
        Scanner sc = new Scanner(System.in);
        String rightPwd = "123456";//正确密码
        String inputPwd = sc.next();//输入密码
        while (count<=3) {
            if (inputPwd==null || inputPwd.equals("") || inputPwd.isEmpty() || !inputPwd.equals(rightPwd)) {
                count++;
                if (count==3) {
                    System.out.println("密码错误次数已达3次");
                    return;
                }else {
                    System.out.println("密码错误,请重新输入");
                    inputPwd = sc.next();
                }
            }
            if (inputPwd.equals(rightPwd)) {
                System.out.println("密码正确,余额:¥"+ balance);
                return;
            }
        }
    }

    public static void money() {
        Scanner sc = new Scanner(System.in);
        int inputMoney = sc.nextInt();//输入取款金额
        if (inputMoney>0 && inputMoney<=balance) {
            balance-=inputMoney;
            System.out.println("取款金额:¥"+inputMoney + ",剩余金额:¥"+balance);
        }else {
            System.out.println("请输入正确取款金额:");
            inputMoney = sc.nextInt();
            balance-=inputMoney;
            System.out.println("取款金额:¥"+inputMoney + ",剩余金额:¥"+balance);
        }
        while (balance>0) {
            System.out.println("继续取款请按1,退出取款请按0");
            int num = sc.nextInt();
            if (num==1) {
                System.out.println("请输入取款金额:");
                inputMoney = sc.nextInt();
                balance-=inputMoney;
                System.out.println("取款金额:¥"+inputMoney + ",剩余金额:¥"+balance);
            }else if (num==0) {
                return;
            }
        }
    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值