自动贩卖机怎么编程序

时间:2025-01-26 23:57:37 网络游戏

自动贩卖机的编程可以通过多种编程语言实现,例如Python、Java等。下面我将提供一个使用Python编写的简单自动贩卖机程序的示例代码,该代码实现了基本的选择商品、投币和找零功能。你可以根据实际需求进行扩展和修改。

```python

商品信息字典,键为商品编号,值为包含商品名称和价格的字典

goods = {

"1": {"name": "可乐", "price": 3},

"2": {"name": "薯片", "price": 5},

"3": {"name": "巧克力", "price": 8}

}

记录投币金额

total_money = 0

def display_goods():

"""显示商品信息"""

print("商品列表:")

for code, info in goods.items():

print(f"{code}: {info['name']}, 价格: {info['price']} 元")

def insert_money():

"""投币功能"""

global total_money

while True:

try:

money = float(input("请投入硬币或纸币(输入金额,输入负数或非数字结束投币): "))

if money < 0:

break

total_money += money

except ValueError:

print("请输入有效的金额")

def select_product(product_code):

"""选择商品"""

if product_code in goods:

product = goods[product_code]

if product["price"] <= total_money:

total_money -= product["price"]

return product["name"]

else:

return "余额不足"

else:

return "商品不存在"

def main():

display_goods()

insert_money()

while True:

choice = input("请选择商品编号(输入Q结束): ")

if choice.upper() == 'Q':

break

result = select_product(choice)

if result == "商品不存在":

print("商品编号不存在")

elif result == "余额不足":

print("余额不足,无法购买商品")

else:

print(f"您购买了 {result},余额剩余: {total_money} 元")

if __name__ == "__main__":

main()

```

代码说明:

商品信息字典:

定义了三种商品及其价格和编号。

投币功能:

通过`insert_money`函数实现,用户可以输入金额,程序会累加投币金额。

选择商品:

通过`select_product`函数实现,用户输入商品编号后,程序会检查余额是否足够并扣款。

主循环:

在`main`函数中,首先显示商品信息,然后进入投币和选择商品的循环,直到用户选择结束。

你可以根据实际需求扩展这个示例,例如增加更多商品、实现多种支付方式、记录购买历史等。