Menu
CoddyTech

Bán một loại thuốc

Thuộc phần Nền tảng cơ bản trong hành trình Lua của Coddy. Bài học 82 trên 90.

challenge icon

Thử thách

Dễ

Hoàn thành dự án cửa hàng thuốc của bạn bằng cách triển khai hệ thống giao dịch bán hàng. Dựa trên chức năng tìm kiếm, hãy tạo hệ thống xử lý việc bán thuốc bằng cách giảm số lượng hàng trong kho và xác nhận giao dịch.

Đầu vào sẽ có dạng sau:

  • Một chuỗi chứa tên loại thuốc cần bán

Dùng vòng lặp for với bộ đếm số để duyệt qua bảng inventory và tìm loại thuốc được chỉ định. Khi tìm thấy loại thuốc khớp bằng toán tử so sánh bằng ==, hãy giảm giá trị stock đi 1 để mô phỏng giao dịch bán hàng.

Sau khi cập nhật hàng trong kho, in thông báo xác nhận có tên loại thuốc và số lượng hàng mới theo định dạng:

Sold 1 [potion name]
Remaining stock: [new stock count]

Dùng phép nối chuỗi để kết hợp phần mô tả với tên loại thuốc và số lượng hàng trong kho đã cập nhật. Sau khi xử lý giao dịch bán hàng, dùng câu lệnh break để thoát khỏi vòng lặp.

Tự làm thử

-- Inventory table with potion data
inventory = {
    {name = "Health Potion", price = 15, stock = 8},
    {name = "Mana Potion", price = 12, stock = 5},
    {name = "Strength Potion", price = 25, stock = 3},
    {name = "Speed Potion", price = 18, stock = 2}
}

-- Read the potion name to search for
search_name = io.read()

-- Use a numeric for loop to search through the inventory
for i = 1, #inventory do
    if inventory[i].name == search_name then
        print("Found: " .. inventory[i].name)
        print("Price: " .. inventory[i].price .. " gold")
        print("Stock: " .. inventory[i].stock .. " units")
        break
    end
end

Tất cả bài học trong Nền tảng cơ bản

Tự luyện tập: Trình biên dịch Lua online