编写一个程序,模拟超市结账系统,收银员能够多次输入商品名称、价格、折扣,出应付金额。最后用户输入金钱,实现找零功能,输出购物小票
时间: 2024-09-20 18:01:59 浏览: 81
C#超市收银系统,管理程序的设计与实现代码c语言【带课设】
5星 · 资源好评率100%
编写这样一个超市结账系统的程序可以使用Python语言,因为它简洁易读,适合快速原型开发。下面是一个简单的示例:
```python
class Product:
def __init__(self, name, price, discount=0):
self.name = name
self.price = price
self.discount = discount
def get_final_price(self):
return self.price * (1 - self.discount)
def checkout(products, payment):
total_cost = 0
for product in products:
total_cost += product.get_final_price()
change = payment - total_cost
receipt = "购物小票:\n"
receipt += f"商品名称\t价格\t折扣后价\n"
for product in products:
receipt += f"{product.name}\t{product.price:.2f}\t{product.get_final_price():.2f}\n"
if change > 0:
receipt += f"找零: {change:.2f}元\n"
else:
receipt += f"支付完成,无需找零。\n"
print(receipt)
# 示例使用
products = [Product("苹果", 5, 0.1), Product("香蕉", 3)]
payment = float(input("请输入付款金额:"))
checkout(products, payment)
```
在这个例子中,我们首先定义了一个`Product`类,包含商品名、原价和折扣信息。然后在`checkout`函数中,我们遍历商品列表,计算总费用并处理找零。最后,根据用户的付款金额打印购物小票。
阅读全文