برنامج رقم لوا ماكس
سؤال
فيما يلي برنامج قصير يأخذ جدولاً ويعيد فهرس أكبر قيمة رقمية في الجدول.
سؤالي هو - هل يمكن لأحد أن يشرح لي "كلمة، عد" في حلقة for في السطر 5؟يعمل البرنامج، لكني لا أفهم كيف تقوم كلمة count في حلقة for بأي شيء.
numbers = {10, 5, 1}
function largest(t)
local maxcount = 0
local maxindex
for word, count in pairs(t) do
if count > maxcount then
maxcount = count
maxindex = word
end
end
return maxindex, maxcount
end
print(largest(numbers))
المحلول
تشغيل الكود التالي يجب أن يجعله أكثر وضوحًا:
tbl = { a = "one", b = "two", c = "two and half" }
for key, val in pairs(tbl) do print(key, val) end
عند تشغيل pairs
في حلقة for، يتم تنفيذ التعليمات البرمجية بين do
و end
مرة واحدة لكل زوج من المفاتيح/القيمة في الجدول؛ for x, y in
يضبط أسماء المفتاح وقيمة الكود داخل الحلقة. pairs
هو المثال الأكثر شيوعًا لـ مكرر.
لا تنتمي إلى StackOverflow