Skip to content

Nhóm4-NMLP #175

@thanhtuyentv0101-blip

Description

@thanhtuyentv0101-blip

lass Product:
def init(self, name, price, stock):
self.name = name
self.stock = stock

def __str__(self):          
 return f"{self.name} - Giá: {self.price} VND, Tồn kho: {self.stock}"

class VendingMachine:
def init(self):
self.products = [
Product("Mì Gói Siu Cay", 19000, 14),
Product("Coca Cola", 15000, 10),
Product("Snack", 12000, 12),
Product("Nước suối", 5000, 20),
Product("Sữa MILO", 12000, 15),
]
self.balance = 500000
def show_menu(self):
print("\nMenu sản phẩm:")
for index, product in enumerate(self.products):
print(f"{index + 1}. {product}")
print(f"số tiền còn lại: {self.balance} VND")
def buy_product(self, choice):
if 1 <= choice <= len(self.products):
product = self.products[choice - 1]
if product.stock > 0:
if self.balance >= product.price:
self.balance -= product.price
product.stock -= 1
print(f"\nMua {product.name} thành công!")
print(f"Tiền còn lại: {self.balance} VND")
print(f"Tồn kho {product.name} còn lại: {product.stock}")
else:
print("\nLỗi: Bạn không đủ tiền để mua sản phẩm này!")
else:
print("\nLỗi: Sản phẩm đã hết hàng!")
else:
print("\nLỗi: Lựa chọn không hợp lệ!")
def run(self):
while True:
self.show_menu()
try:
choice = int(input("\nChọn sản phẩm để mua (hoặc nhập 0 để thoát): "))
if choice == 0:
print("\nCảm ơn bạn đã sử dụng máy bán hàng!")
break
else:
self.buy_product(choice)
except ValueError:
print("\nLỗi: Vui lòng nhập một số hợp lệ!")

if name == "main":

vending_machine = VendingMachine() 

vending_machine.run() 

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions