البحث عن جرعة محددة
جزء من قسم الأساسيات في رحلة Lua على Coddy — الدرس 81 من 90.
التحدي
سهلبناءً على نظام حساب قيمة المخزون الخاص بك، قم بتنفيذ ميزة بحث تتيح لك العثور على معلومات مفصلة وعرضها حول potion معين في inventory متجرك.
سيتم تقديم الإدخال التالي:
- سلسلة نصية تحتوي على اسم potion المراد البحث عنه
استخدم loop من نوع numeric for للتكرار عبر جدول inventory الخاص بك. لكل potion، تحقق مما إذا كان name الـ potion يطابق مصطلح البحث باستخدام عامل المساواة ==.
عندما تعثر على الـ 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")جميع دروس الأساسيات
4المعاملات 2: العمليات العلائقية والمنطقية
معاملات التساويالمعاملات العلائقيةالمعامل 'and'المعامل 'or'المعامل 'not'التقييم قصير الدائرةقيم Truthy و Falsyمراجعة - المنطق البسيط10الجداول الجزء 1: نمط القائمة
ما هو الجدول؟إنشاء جدولالوصول إلى العناصر عبر الفهرستعديل العناصر عبر الفهرسمعامل الطول '#'table.insert()table.remove()ملخص - إدارة أعضاء الفريق13مشروع: متجر جرعات بسيط
إعداد المشروعإضافة جرعة2المتغيرات وأنواع البيانات
ما هو المتغير؟الأرقامالسلاسل النصيةالقيم المنطقيةالقيمة 'nil'الدالة type()قواعد التسميةمراجعة - ملف الشخصية5الإخراج الأساسي
طباعة القيم الحرفيةطباعة المتغيراتطباعة قيم متعددةدمج النصوص والمتغيراتدالة tostring()الإدخال (Input)التحويل (Cast)مراجعة - تقرير الحالةمراجعة - حتى 1208أساسيات معالجة النصوص
string.len()string.upper و string.lowerstring.sub()string.rep()string.find()مراجعة - تنسيق اسم المستخدم3المعاملات 1: العمليات الحسابية والدمج
المعاملات الحسابيةمعامل باقي القسمةمعامل الأسدمج النصوصأولوية المعاملاتملخص - حسابات بسيطة6مشروع: عرض إحصائيات الشخصية
رسالة ترحيبتعريف إحصائيات الشخصية9أساسيات الدوال
تعريف دالةاستدعاء دالةدوال مع معاملاتدوال بمعاملات متعددةجملة 'return'مراجعة - حاسبة المساحة12أساسيات الحلقات التكرارية
حلقة whileحلقة repeat-untilحلقة for الرقميةحلقة for مع خطوةجملة 'break'مراجعة - العد التنازلي