Menu
Coddy logo textTech

Vendre une potion

Fait partie de la section Les fondamentaux du Journey Lua de Coddy. Leçon 82 sur 90.

challenge icon

Défi

Facile

Termine ton projet de boutique de potions en implémentant un système de transactions de vente. En t’appuyant sur ta fonctionnalité de recherche, crée un système qui traite la vente d’une potion en réduisant la quantité en stock et en fournissant une confirmation de la transaction.

L’entrée suivante sera fournie :

  • Une chaîne contenant le nom de la potion à vendre

Utilise une boucle numérique for pour parcourir ta table inventory afin de trouver la potion spécifiée. Lorsque tu localises la potion correspondante à l’aide de l’opérateur d’égalité ==, diminue sa valeur stock de 1 pour simuler la vente.

Après avoir mis à jour le stock, affiche un message de confirmation indiquant le nom de la potion et son nouveau niveau de stock au format suivant :

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

Utilise la concaténation de chaînes pour combiner le texte descriptif avec le nom de la potion et la quantité mise à jour en stock. Après avoir traité la vente, utilise l’instruction break pour quitter la boucle.

Essayez vous-même

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

Toutes les leçons de Les fondamentaux

Entraînez-vous par vous-même : Compilateur Lua en ligne