Menu
Coddy logo textTech

Vender una poción

Parte de la sección Fundamentals del Journey de Lua de Coddy — lección 82 de 90.

challenge icon

Desafío

Fácil

Completa tu proyecto de la tienda de pociones implementando un sistema de transacciones de venta. Basándote en tu funcionalidad de búsqueda, crea un sistema que procese la venta de una poción reduciendo la cantidad en stock y proporcionando una confirmación de la transacción.

Se proporcionará la siguiente entrada:

  • Una cadena que contiene el nombre de la poción a vender

Usa un bucle for numérico para iterar a través de tu tabla inventory para encontrar la poción especificada. Cuando localices la poción coincidente usando el operador de igualdad ==, disminuye su valor de stock en 1 para simular la venta.

Después de actualizar el stock, imprime un mensaje de confirmación que muestre el nombre de la poción y su nuevo nivel de stock en el formato:

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

Usa la concatenación de cadenas para combinar el texto descriptivo con el nombre de la poción y la cantidad de stock actualizada. Después de procesar la venta, usa la sentencia break para salir del bucle.

Pruébalo tú mismo

-- 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

Todas las lecciones de Fundamentals