Lua Academy · पाठ

संख्यात्मक for लूप

for i=start,limit,step सिंटैक्स से संख्यात्मक सीमाओं पर पुनरावृत्ति करें।

पाठ 3, कुल 4 में से12 चरण

संख्यात्मक for लूप, CoddyKit पर Lua Academy का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Lua Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Lua Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

संख्यात्मक for का सिंटैक्स

Lua के संख्यात्मक for लूप का रूप for var = start, limit, step do होता है। यदि step न दिया जाए, तो उसका डिफ़ॉल्ट मान 1 होता है। लूप का चर लूप बॉडी तक स्थानीय रहता है और उसके अंदर बदला नहीं जा सकता। लूप शुरू होने से पहले limit और step का मूल्यांकन एक बार किया जाता है।

-- Count 1 to 5
for i = 1, 5 do
  io.write(i .. " ")
end
print()   -- 1 2 3 4 5

-- Count with step 2
for i = 1, 10, 2 do
  io.write(i .. " ")
end
print()   -- 1 3 5 7 9

ऋणात्मक step से उलटी गिनती

नीचे की ओर गिनती करने के लिए ऋणात्मक step का उपयोग करें। जब step ऋणात्मक हो, तो लूप तब तक चलता है जब तक var >= limit सत्य है। यदि ऋणात्मक step के साथ start पहले ही limit से छोटा है, तो लूप बॉडी बिल्कुल नहीं चलेगा।

for i = 10, 1, -1 do
  io.write(i .. " ")
end
print()
-- 10 9 8 7 6 5 4 3 2 1

-- Step -2
for i = 10, 0, -2 do
  io.write(i .. " ")
end
print()
-- 10 8 6 4 2 0

लूप का चर स्थानीय होता है

लूप का नियंत्रण चर (i) अपने-आप स्थानीय होता है। आप लूप के अंदर इसका मान नहीं बदल सकते—Lua लूप के चर को किए गए असाइनमेंट को अनदेखा कर देता है। पुनरावृत्तियों को किसी अलग तरीके से गिनने के लिए एक अलग स्थानीय चर का उपयोग करें।

for i = 1, 5 do
  -- i is read-only inside the loop
  -- i = i + 10  -- this creates a new global i, not the loop var
  print(i)  -- always 1, 2, 3, 4, 5 as expected
end
-- i is nil here (it was local to the loop)
print(i)  -- nil (or whatever global i was)

ऐरे पर पुनरावृत्ति

संख्यात्मक for का सबसे आम उपयोग इंडेक्स के आधार पर ऐरे पर पुनरावृत्ति करना है। limit के रूप में #arr का उपयोग करें। ipairs के विपरीत, यह रूप आपको step का आकार नियंत्रित करने और उलटे क्रम में पुनरावृत्ति करने देता है, और घने ऐरे के लिए यह थोड़ा तेज़ भी है।

local fruits = {"apple", "banana", "cherry", "date"}

for i = 1, #fruits do
  print(i, fruits[i])
end
-- 1  apple
-- 2  banana
-- 3  cherry
-- 4  date

for से योग करना

ऐरे के तत्वों पर संचय करने के लिए संख्यात्मक for लूप आदर्श होते हैं। पैटर्न हमेशा एक जैसा होता है: लूप से पहले परिणाम चर को आरंभ करें, अंदर उसे अपडेट करें और बाद में उसका उपयोग करें।

local values = {10, 20, 30, 40, 50}
local total = 0

for i = 1, #values do
  total = total + values[i]
end

print("Total:", total)    -- 150
print("Count:", #values)  -- 5
print("Mean:", total / #values)  -- 30

नेस्टेड संख्यात्मक for

मैट्रिक्स पर चलने, तालिकाओं की तालिका पर काम करने या निर्देशांक युग्म बनाने जैसे द्वि-आयामी कार्यों के लिए दो संख्यात्मक for लूप को नेस्ट करें। बाहरी लूप पंक्तियों और अंदर वाला लूप स्तंभों पर चलता है—हर पुनरावृत्ति में एक सेल तक पहुँचा जाता है।

local rows, cols = 3, 4

for r = 1, rows do
  for c = 1, cols do
    io.write(string.format("%2d ", r * c))
  end
  print()
end
--  1  2  3  4
--  2  4  6  8
--  3  6  9 12

दशमलव step

step और limit फ़्लोटिंग-पॉइंट संख्याएँ हो सकती हैं, हालांकि इससे परिशुद्धता संबंधी त्रुटियाँ आ सकती हैं। पुनरावृत्तियों की सटीक संख्या के लिए पूर्णांकों का उपयोग करें। यदि फ़्लोट का उपयोग करना आवश्यक हो, तो ध्यान रखें कि लूप की संख्या floor((limit - start) / step) + 1 से निकाली जाती है।

-- Float step
for x = 0.0, 1.0, 0.25 do
  io.write(x .. " ")
end
print()
-- 0.0  0.25  0.5  0.75  1.0

-- Prefer integer math when possible
for i = 0, 4 do
  local x = i * 0.25
  io.write(x .. " ")
end

परिणाम की तालिका बनाना

मौजूदा डेटा से नई तालिका बनाने का मानक तरीका संख्यात्मक for लूप है। एक खाली तालिका बनाएँ, फिर इंडेक्स के आधार पर उसे भरने के लिए लूप का उपयोग करें।

local source = {1, 2, 3, 4, 5}
local squares = {}

for i = 1, #source do
  squares[i] = source[i] ^ 2
end

for i = 1, #squares do
  print(squares[i])   -- 1, 4, 9, 16, 25
end

संख्यात्मक for में break

आप break से संख्यात्मक for से समय से पहले बाहर निकल सकते हैं। निष्पादन end के बाद वाले कथन पर चला जाता है। यह क्रमिक खोज के लिए उपयोगी है: लक्ष्य मिलने तक पुनरावृत्ति करें, फिर break करें।

local data = {5, 3, 8, 1, 9, 2, 7}
local target = 9
local foundAt = nil

for i = 1, #data do
  if data[i] == target then
    foundAt = i
    break
  end
end

if foundAt then
  print("Found at index " .. foundAt)  -- 5
else
  print("Not found")
end

लूप की संख्या की गणना

for i = start, limit, step की पुनरावृत्तियों की संख्या max(0, floor((limit - start) / step) + 1) होती है। इसे समझने से एक-से-अधिक या एक-कम वाली त्रुटियों से बचा जा सकता है। जब step 1 हो, तो संख्या सरल रूप से limit - start + 1 होती है।

-- How many iterations?
local count = 0
for i = 1, 10, 3 do
  count = count + 1
end
print(count)   -- 4  (i = 1, 4, 7, 10)

count = 0
for i = 5, 1 do   -- step=1 but start > limit
  count = count + 1
end
print(count)   -- 0 (no iterations)

त्वरित जाँच

for i = 10, 1, -3 do किन मानों पर पुनरावृत्ति करता है?

पुनरावलोकन: संख्यात्मक for

सारांश:

  • for i = start, limit, step do — step का डिफ़ॉल्ट मान 1 होता है
  • उलटी गिनती के लिए ऋणात्मक step
  • लूप का चर अपने-आप स्थानीय और केवल-पठन योग्य होता है
  • लूप शुरू होने से पहले limit और step का मूल्यांकन एक बार किया जाता है
  • break समय से पहले बाहर निकलता है
  • मानक पैटर्न: परिणाम की तालिकाएँ बनाना, ऐरे खोजना और योग संचित करना
शुरुआत निःशुल्क

एआई शिक्षक के साथ Lua सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
40
पाठ
159

अक्सर पूछे जाने वाले प्रश्न

क्या “संख्यात्मक for लूप” पाठ निःशुल्क है?

हाँ — Lua Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “संख्यात्मक for लूप” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Lua Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“संख्यात्मक for लूप” में मैं क्या सीखूँगा?

for i=start,limit,step सिंटैक्स से संख्यात्मक सीमाओं पर पुनरावृत्ति करें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Lua Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Lua Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Lua Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।

“संख्यात्मक for लूप” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Lua Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Lua Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. if, elseif और else कथन
  2. while और repeat-until लूप
  3. संख्यात्मक for लूप
  4. सामान्य for और break
← Lua Academy पर वापस जाएँ