Educoder-java入门:综合练习之ATM取款机

该代码示例展示了如何用Java编写一个简单的ATM取款程序。程序首先欢迎用户使用,然后在循环中获取用户输入的取款金额。如果输入金额超过账户余额,程序会提示无法满足取款需求并继续循环;否则,将扣除相应金额,并询问用户是否继续取款。用户选择退出(输入1)时,程序结束,否则继续下一轮取款操作。
摘要由CSDN通过智能技术生成

源码最后放,先做代码、题型分析

题目分析

在这里插入图片描述

请添加图片描述
欢迎使用中国人民银行
在循环体最外,只输出一次

输入取款金额
循环体内、最外层,需要执行判断,判断输入金钱是否已经超出,超出“余额”后“continue”条件语句,再次返回上一个循环
else{输入金钱未超出情况下,则执行内部分支循环}

是否继续
需要判断语句或者switch语句,判断用户输入返回值,如果返回值为“1”,执行“取款结束”,并break,如果为“2”,则跳到最外层循环

取款结束!
和break语句一起控制

代码分析

Scanner input = new Scanner(System.in);			
		
		System.out.println("欢迎使用中国人民银行ATM取款机");			//在循环体外,只输出一次	
		
		int capital = 1000;		//总资金	
		
		while(true) {										//循环体设为true,无限循环
			System.out.println("输入取款金额:");			//循环外层控制“输入金额”
			int a = input.nextInt();									//准备接收输入数据
		
			if(a > capital) {												//执行判断语句,如果输出金额大于总金额,则返回返回外层循环
				System.out.println("目前余额:"+capital+"无法满足您的取款需求!");		
				continue;													//返回外层循环
				
			}else {														//如果“输入金额”小于capital,则,分支判断开始
					capital = capital - a;
					
					System.out.println("剩余金额:"+capital+",是否继续('1':结束,'2':继续):");
						//资金等于总资金 - 取款额度
					
					int change = input.nextInt();			//控制输入“1”,“2”,判断是否结束程序
					if (change == 1) {
						System.out.println("取款结束!");		//如果为1,程序终止
						break;
						
					}else {													//如果为其他,则返回外层循环
						continue;
					}
			}
		
		}

整体代码

在这里插入图片描述
在这里插入图片描述

  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,下面是一个ATM取款机Java代码示例: ``` import java.util.Scanner; public class ATM { private static double balance = 1000; // 初始余额为1000元 public static void main(String[] args) { Scanner input = new Scanner(System.in); boolean flag = true; // 是否继续操作的标志 while (flag) { System.out.println("请选择操作类型:"); System.out.println("1. 查询余额"); System.out.println("2. 取款"); System.out.println("3. 存款"); System.out.println("4. 退出"); int choice = input.nextInt(); switch (choice) { case 1: checkBalance(); break; case 2: withdraw(); break; case 3: deposit(); break; case 4: flag = false; break; default: System.out.println("无效的操作类型,请重新选择!"); break; } } input.close(); System.out.println("感谢使用本 ATM 取款机,再见!"); } // 查询余额 public static void checkBalance() { System.out.println("您的余额为:" + balance + " 元"); } // 取款 public static void withdraw() { Scanner input = new Scanner(System.in); System.out.println("请输入取款金额:"); double amount = input.nextDouble(); if (amount <= balance) { balance -= amount; System.out.println("取款成功,您的余额为:" + balance + " 元"); } else { System.out.println("余额不足,取款失败!"); } input.close(); } // 存款 public static void deposit() { Scanner input = new Scanner(System.in); System.out.println("请输入存款金额:"); double amount = input.nextDouble(); balance += amount; System.out.println("存款成功,您的余额为:" + balance + " 元"); input.close(); } } ``` 这个代码示例实现了一个简单的ATM取款机,包括查询余额、取款、存款和退出等功能。在程序中,我们使用了一个静态变量 `balance` 来保存用户的余额,然后分别实现了查询余额、取款和存款等操作。当用户输入退出操作时,`flag` 变量被设置为 `false`,循环结束,程序退出。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鬼鬼骑士

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值