使用所学知识编写一个基于控制台的购书系统,实现购书功能。输出所有图书的信息:包括每本书的编号、书名、单价、库存。 顾客购买书时,根据提示输入图书编号来选购需要的书,并根据提示输入购买书的的数量。 购买完毕后输出顾客的订单信息,包括:订单号、订单明细、订单总额。
时间: 2024-10-14 14:03:35 浏览: 20
开发基于控制台的购书系统_java源代码.doc
好的,我们可以创建一个简单的控制台购书系统的伪代码来说明其基本结构。这个系统包含书籍管理模块和订单处理模块:
```python
class Book:
def __init__(self, id, title, price, stock):
self.id = id
self.title = title
self.price = price
self.stock = stock
books = {
# 例如这里可以填充一些书籍数据
1: Book(1, "Python编程", 50, 10),
2: Book(2, "算法导论", 80, 8)
}
class Order:
def __init__(self, order_id):
self.order_id = order_id
self.items = []
def add_item(self, book_id, quantity):
for book in books.values():
if book.id == book_id:
if book.stock >= quantity:
book.stock -= quantity
self.items.append((book_id, book.title, book.price * quantity))
break
else:
print(f"对不起,书《{book.title}》已售罄")
def main():
order = Order("001")
while True:
user_input = input("请输入你要购买的图书编号(输入'q'退出):")
if user_input.lower() == 'q':
break
try:
book_id = int(user_input)
quantity = int(input("请输入购买数量:"))
order.add_item(book_id, quantity)
except ValueError:
print("无效的输入,请重新输入.")
print("\n订单详情:")
for item in order.items:
print(f"{item[0]} - {item[1]} ({item[2]}) 元")
total_price = sum(item[2] for item in order.items)
print(f"\n订单总额:{total_price}元")
if __name__ == "__main__":
main()
```
在这个系统中,用户通过控制台交互选择图书并指定购买数量,系统会检查库存并更新。最后会显示订单详情和总额。当然,这只是一个基础版本,实际应用中可能需要考虑数据库连接、错误处理等更复杂的功能。
阅读全文