zoukankan      html  css  js  c++  java
  • 初识Java---简单小程序:ATM存取款机

      1 import java.util.Scanner;
      2 
      3 /**ATM存取款机*/
      4 public class ATM {
      5 
      6     public static void main(String[] args) {
      7         /**初始化用户信息*/ 
      8         String user = "zhan";//用户名
      9         String pwd = "123";//密码
     10         float money = 100f ;//初始余额
     11         welcome();
     12         if (login(user,pwd)){
     13             //登录成功
     14             Scanner sc = new Scanner(System.in);
     15             while (true){
     16                 System.out.println("1、查询 2、存款 3、取款 4、修改密码 5、退出");          
     17                 switch (sc.nextInt()){
     18                 case 1 : 
     19                     searchMoney(money); 
     20                     break;
     21                 case 2 :
     22                     money += saveMoney();
     23                     break;
     24                 case 3 : 
     25                     money -= getMoney(money);
     26                     break;
     27                 case 4 : 
     28                     pwd  = changePwd(pwd); 
     29                     break;
     30                 case 5 : System.exit(0); break;
     31                 default :;break;
     32                 }
     33             }
     34         }else{
     35             //登录失败
     36             //System.out.println("登录失败,系统退出!");
     37             System.exit(0);
     38         }
     39     }
     40     
     41     /**
     42      * 欢迎登陆界面
     43      * 
     44      * */ 
     45     public static void welcome (){
     46         System.out.println("***********************");
     47         System.out.println("——欢迎登陆———");
     48         System.out.println("***********************");
     49         System.out.println("***********************");
     50         System.out.println("***********************");
     51     }
     52     /**
     53      * 登陆--检测用户名和密码
     54      * 
     55      * */ 
     56     public static boolean login (String user ,String pwd){
     57         Scanner sc = new Scanner (System.in);
     58         
     59         for (int i = 3 ;i>0;i--){
     60             System.out.println("请输入用户名:");
     61             String checkUser = sc.next();//用户输入 用户名
     62             System.out.println("请输入密码:");
     63             String checkPwd = sc.next();//用户输入 密码
     64              // .equals()匹配字符串
     65             if (user.equals (checkUser) && pwd.equals (checkPwd) ){
     66                 System.out.println("登陆成功!");
     67                 return true ;
     68             }else {
     69                 if ( i ==1 ){
     70                     System.out.println("你的卡被吞!!找相关人员");
     71                     return false ;
     72                 }
     73                 System.out.println("用户名或密码错误!今日剩余次数:"+ (i-1));
     74             }
     75         }
     76         return false ;    
     77     }
     78     /**
     79      *查询余额
     80      * 
     81      * */ 
     82     public static void searchMoney (float money){
     83         System.out.println("你的余额为"+money);
     84     }
     85     /**
     86      *存款
     87      * 
     88      * */ 
     89     public static float saveMoney (){
     90         System.out.println("请输入存款金额:");
     91         Scanner sc = new Scanner (System.in);
     92         float saveMoney = sc.nextFloat();
     93         
     94         if (saveMoney > 10000){
     95             System.out.println("单次最大存款金额为1000.0元");
     96              saveMoney=0;
     97         }else if (saveMoney < 0){
     98             System.out.println("不能存负数的钱!!");
     99              saveMoney=0;
    100         }else if (saveMoney %100!= 0){
    101             System.out.println("不能存零钱!!");
    102              saveMoney=0;
    103         }else{
    104             System.out.println("存款成功!");
    105         }    
    106             return saveMoney ;
    107     }
    108     /**
    109      *取款
    110      * 
    111      * */ 
    112     public static float getMoney (float money){
    113         System.out.println("请输入取款金额:");
    114         Scanner sc = new Scanner (System.in);
    115         float getMoney = sc.nextFloat();
    116         
    117         if (getMoney > 10000){
    118             System.out.println("单次最大取款金额为1000.0元");
    119             getMoney=0;
    120         }else if (getMoney < 0){
    121             System.out.println("不能取负数的钱!!");
    122             getMoney=0;
    123         }else if (getMoney %100!= 0){
    124             System.out.println("不能取零钱!!");
    125             getMoney=0;
    126         }else if (money <getMoney ){
    127             System.out.println("余额不足!!");
    128             getMoney=0;
    129         }else {
    130             System.out.println("取款成功!");
    131         }
    132             return getMoney ;
    133     }
    134     
    135     /**
    136      *修改密码
    137      * 
    138      * */ 
    139     public static String changePwd(String oldPwd) {
    140         System.out.println("请输入旧密码:");
    141         Scanner sc = new Scanner (System.in);
    142         String pwd = sc.next();
    143         
    144         if (pwd.equals(oldPwd)){
    145             //老密码正确;
    146             System.out.println("请输入新密码:");
    147             String newPwd_1= sc.next();
    148             System.out.println("请再次输入新密码:");
    149             String newPwd_2= sc.next();
    150             if (newPwd_1.equals(newPwd_2)){
    151                 System.out.println("密码修改成功!");
    152                 return newPwd_1 ;
    153             }else{
    154                 System.out.println("两次密码不一致,请重新修改!");
    155                 return oldPwd ;
    156             }
    157         }else {
    158             System.out.println("旧密码输入错误,请重新修改!");
    159         }
    160         return oldPwd ;
    161     }        
    162 }
  • 相关阅读:
    将某个MySQL库中的UTF8字符列都转成GBK格式
    挺苹果的声音,iPhone 5s的两处进步
    Cookie 路径在本机测试及服务器部署,在浏览器处理方式上的不同
    inner join、left join、right join中where和and的作用
    TIA Portal V12不能添加新的CPU
    Linux下可执行程序调试信息的分离及release程序的调试
    STM32.定时器
    STM32.SPI(25Q16)
    模电之运放篇
    Zigbee学习
  • 原文地址:https://www.cnblogs.com/zzyytt/p/5836213.html
Copyright © 2011-2022 走看看