Menu
Coddy logo textTech

Vendendo uma Poção

Parte da seção Fundamentals do Journey de Lua da Coddy — lição 82 de 90.

challenge icon

Desafio

Fácil

Complete seu projeto de loja de poções implementando um sistema de transação de vendas. Com base na sua funcionalidade de busca, crie um sistema que processe a venda de uma poção, reduzindo a quantidade em estoque e fornecendo uma confirmação da transação.

A seguinte entrada será fornecida:

  • Uma string contendo o nome da poção a ser vendida

Use um loop for numérico para iterar pela sua tabela inventory para encontrar a poção especificada. Quando você localizar a poção correspondente usando o operador de igualdade ==, diminua seu valor de stock em 1 para simular a venda.

Após atualizar o estoque, imprima uma mensagem de confirmação mostrando o nome da poção e seu novo nível de estoque no formato:

Sold 1 [nome da poção]
Remaining stock: [nova contagem de estoque]

Use a concatenação de strings para combinar o texto descritivo com o nome da poção e a quantidade de estoque atualizada. Após processar a venda, use a instrução break para sair do loop.

Experimente você mesmo

-- 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 as lições de Fundamentals