特定のポーションの検索
CoddyのLuaジャーニー「基礎」セクションの一部 — レッスン 81/90。
チャレンジ
簡単インベントリ価値計算システムを元に、ショップの inventory 内の特定の potion に関する詳細情報を検索して表示する search 機能を実装してください。
以下の入力が提供されます:
- 検索対象の
potionの名前を含む文字列
numeric for loop を使用して、inventory table を through に繰り返し処理します。各 potion について、等価演算子 == を使用して potion の name が検索語句と一致するかを確認してください。
一致する potion が見つかったら、以下の形式でその詳細をすべて出力します:
Found: [name]
Price: [price] gold
Stock: [stock] units文字列結合を使用して、説明文と各 potion のプロパティを組み合わせます。potion の詳細を見つけて表示した後は、目的のものが取得できたため break ステートメントを使用して loop を終了してください。
自分で試してみよう
-- Inventory table with potion data
local 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}
}
-- Initialize total value variable
local totalValue = 0
-- Calculate total inventory value using numeric for loop
for i = 1, #inventory do
local itemValue = inventory[i].price * inventory[i].stock
totalValue = totalValue + itemValue
end
-- Print the total inventory value
print("Total inventory value: " .. totalValue .. " gold")