用Java编写一个自动售货机为客户提供各种饮料。饮料的价格有两种:2元和3元。用户投人2元钱,可以选择“净净矿泉水”“甜甜矿泉水”和“美美矿泉水”三者之一。用户投人3元钱,可以选择“爽口可乐““清凉雪碧”和“雪山果汁”三者之一。编写程序模拟用户向自动售货机投入钱币,得到一种饮料。
时间: 2024-09-30 10:06:07 浏览: 45
单价为5角的饮料自动售货机
5星 · 资源好评率100%
为了创建这个简单的Java自动售货机程序,我们可以设计一个`VendingMachine`类,其中包含一些基本的饮料选择以及对应的价格。下面是该类的一个基础实现:
```java
import java.util.Scanner;
public class VendingMachine {
// 定义饮料及其价格
enum Drink {
WATER_2Yuan(2), COKE_3Yuan(3), PEPSI_3Yuan(3);
private int price;
Drink(int price) {
this.price = price;
}
public int getPrice() {
return price;
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("欢迎使用自动售货机,请选择饮料:");
for (Drink drink : Drink.values()) {
System.out.println(drink.name() + " - " + drink.getPrice() + "元");
}
System.out.print("请输入您选择的饮料名称(例如 'WATER_2Yuan' 或 'PEPSI_3Yuan'),然后按回车:");
String choice = scanner.nextLine().toUpperCase(); // 转换为大写忽略大小写
Drink selectedDrink = Drink.valueOf(choice); // 根据输入获取对应的饮料类型
if (selectedDrink != null) {
System.out.println("请输入您的硬币金额:" + selectedDrink.getPrice());
int moneyInserted = scanner.nextInt();
if (moneyInserted >= selectedDrink.getPrice()) {
System.out.println("成功付款,您的" + selectedDrink.name() + "已售出,找零:" + (moneyInserted - selectedDrink.getPrice()));
} else {
System.out.println("投币不足,请再投入" + (selectedDrink.getPrice() - moneyInserted) + "元!");
}
} else {
System.out.println("无效的选择,请重新输入。");
}
scanner.close();
}
}
```
在这个例子中,我们首先定义了饮料的枚举,每个枚举值代表一种饮料,包括其价格。用户输入选择后,程序会检查投入的钱是否足够,并打印相应的反馈信息。
阅读全文