इस लेख में, हम C # में लूप के बारे में सीखेंगे और उन्हें एक कार्यक्रम में उपयोग करने के विभिन्न तरीकों के बारे में जानेंगे।
प्रोग्रामिंग में, यह कई बार निर्दिष्ट संख्या के लिए कतिपय ब्लॉक को निष्पादित करने के लिए वांछित होता है। एक संभावित समाधान उन बयानों को आवश्यक संख्या के लिए टाइप करना होगा। हालांकि, पुनरावृत्ति की संख्या पहले से नहीं जानी जा सकती है (संकलन समय के दौरान) या शायद काफी बड़ी (10000 कहो)।
ऐसी समस्या का सबसे अच्छा समाधान लूप है। लूपिंग का उपयोग प्रोग्रामिंग में कुछ शर्तों को पूरा करने तक बयानों के एक निश्चित ब्लॉक को बार-बार निष्पादित करने के लिए किया जाता है।
इस लेख में, हम C # में लूप देखेंगे।
लूप के लिए सी #
के लिए कीवर्ड सी # में पाश के लिए बनाने के लिए प्रयोग किया जाता है। लूप के लिए सिंटैक्स है:
के लिए (आरंभीकरण; स्थिति; पुनरावृत्ति) (// लूप के लिए शरीर)
पाश कैसे काम करता है?
- पाश के लिए सी # तीन कथन है:
initialization
,condition
औरiterator
। initialization
बयान पहली बार में और केवल एक बार निष्पादित किया जाता है। यहां, चर को आम तौर पर घोषित और प्रारंभिक किया जाता है।- फिर,
condition
मूल्यांकन किया जाता है।condition
एक बूलियन अभिव्यक्ति है यानि यह या तो रिटर्नtrue
याfalse
। - यदि
condition
इसका मूल्यांकन किया जाता हैtrue
:- लूप के लिए अंदर के कथनों को निष्पादित किया जाता है।
- फिर,
iterator
कथन निष्पादित किया जाता है जो आमतौर पर आरंभिक चर के मूल्य को बदलता है। - फिर
condition
से मूल्यांकन किया जाता है। condition
मूल्यांकन होने तक प्रक्रिया जारी रहती हैfalse
।
- यदि
condition
मूल्यांकन किया जाता हैfalse
, तो लूप समाप्त हो जाता है।
लूप फ़्लोचार्ट के लिए
उदाहरण 1: लूप के लिए C #
using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( for (int i=1; i<=5; i++) ( Console.WriteLine("C# For Loop: Iteration (0)", i); ) ) ) )
जब हम प्रोग्राम चलाते हैं, तो आउटपुट होगा:
C # लूप के लिए: Iteration 1 C # लूप के लिए: Iteration 2 C # लूप के लिए: Iteration 3 C # लूप के लिए: Iteration 4 C # लूप के लिए: Iteration 5
इस कार्यक्रम में,
initialization
बयान हैint i=1
condition
बयान हैi<=5
iterator
बयान हैi++
जब कार्यक्रम चलता है,
- सबसे पहले, वैरिएबल I घोषित किया गया है और 1 को आरंभीकृत किया गया है।
- फिर, स्थिति (
i<=5
) का मूल्यांकन किया जाता है। - चूंकि, स्थिति वापस आती है
true
, फिर प्रोग्राम लूप के लिए बॉडी निष्पादित करता है। यह Iteration 1 के साथ दी गई रेखा को प्रिंट करता है (Iteration का अर्थ है पुनरावृत्ति)। - अब, इटरेटर (
i++
) का मूल्यांकन किया जाता है। यह i से 2 का मान बढ़ाता है। - स्थिति (
i<=5
) का फिर से मूल्यांकन किया जाता है और अंत में, I का मान 1 से बढ़ा दिया जाता है। यह स्थितिtrue
पहले 5 बार मूल्यांकन करेगी । - जब i का मान 6 होगा और शर्त होगी
false
, इसलिए लूप समाप्त हो जाएगा।
उदाहरण 2: लूप के लिए पहले n प्राकृतिक संख्याओं की गणना करने के लिए
using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( int n = 5,sum = 0; for (int i=1; i<=n; i++) ( // sum = sum + i; sum += i; ) Console.WriteLine("Sum of first (0) natural numbers = (1)", n, sum); ) ) )
जब हम प्रोग्राम चलाते हैं, तो आउटपुट होगा:
पहले 5 प्राकृतिक संख्याओं का योग = 15
यहां, सम और एन के मूल्य को क्रमशः 0 और 5 के लिए शुरू किया जाता है। पुनरावृति चर I को 1 से प्रारंभ किया जाता है और प्रत्येक पुनरावृत्ति पर बढ़ाया जाता है।
लूप के अंदर, योग का मान i यानी बढ़ा हुआ है sum = sum + i
। लूप के लिए जारी रहता है जब तक कि मैं n (उपयोगकर्ता के इनपुट) से कम या बराबर नहीं होता।
आइए देखें कि प्रत्येक पुनरावृत्ति पर दिए गए कार्यक्रम में क्या होता है।
प्रारंभ में, मैं = 1, योग = 0 और एन = 3
पाश निष्पादन चरणों के लिएIteration | का मान | i <= 5 | योग का मान |
---|---|---|---|
1 है | 1 है | सच | 0 + 1 = 1 |
२ | २ | सच | 1 + 2 = 3 |
३ | ३ | सच | 3 + 3 = 6 |
४ | ४ | सच | 6 + 4 = 10 |
५ | ५ | सच | 10 + 5 = 15 |
६ | ६ | असत्य | पाश समाप्त हो जाता है |
तो, योग का अंतिम मूल्य 15 होगा जब n = 5।
लूप के लिए एक से अधिक भाव
हम लूप के लिए कई एक्सप्रेशन का भी उपयोग कर सकते हैं। इसका मतलब है कि हमारे पास लूप के भीतर एक से अधिक आरंभीकरण और / या पुनरावृत्त बयान हो सकते हैं। आइए नीचे उदाहरण देखें।
उदाहरण 3: कई आरंभीकरण और पुनरावृत्त अभिव्यक्तियों के साथ लूप के लिए
using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( for (int i=0, j=0; i+j<=5; i++, j++) ( Console.WriteLine("i = (0) and j = (1)", i,j); ) ) ) )
जब हम प्रोग्राम चलाते हैं, तो आउटपुट होगा:
i = 0 और j = 0 i = 1 और j = 1 i = 2 और j = 2
इस कार्यक्रम में, हमने आरम्भिकरण कथन में दो चर: i और j को घोषित किया है।
इसके अलावा, हम पुनरावृत्ति भाग में दो भाव हैं। इसका मतलब है कि मैं और जम्मू दोनों प्रत्येक पुनरावृत्ति पर 1 से बढ़े हुए हैं।
प्रारंभिक और पुनरावृत्त बयानों के बिना लूप के लिए
The initialization, condition and the iterator statement are optional in a for loop. It means we can run a for loop without these statements as well.
In such cases, for loop acts as a while loop. Let's see the example below.
Example 4: for loop without initialization and iterator statement
using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( int i = 1; for ( ; i<=5; ) ( Console.WriteLine("C# For Loop: Iteration (0)", i); i++; ) ) ) )
When we run the program, the output will be:
C# For Loop: Iteration 1 C# For Loop: Iteration 2 C# For Loop: Iteration 3 C# For Loop: Iteration 4 C# For Loop: Iteration 5
In this example, we haven't used the initialization and iterator statement.
The variable i is initialized above the for loop and its value is incremented inside the body of loop. This program is same as the one in Example 1.
इसी तरह, हालत भी एक वैकल्पिक बयान है। हालाँकि अगर हम परीक्षण अभिव्यक्ति का उपयोग नहीं करते हैं, तो लूप किसी भी स्थिति का परीक्षण नहीं करेगा और हमेशा के लिए चलेगा (अनंत लूप)।
लूप के लिए अनंत
यदि लूप के लिए स्थिति हमेशा सही होती है, तो लूप हमेशा के लिए चलेगा। इसे लूप के लिए अनंत कहा जाता है।
उदाहरण 5: लूप के लिए अनंत
using System; namespace Loop ( class ForLoop ( public static void Main(string() args) ( for (int i=1 ; i>0; i++) ( Console.WriteLine("C# For Loop: Iteration (0)", i); ) ) ) )
यहाँ, मैं 1 से आरंभीकृत किया गया है और स्थिति है i>0
। प्रत्येक पुनरावृत्ति पर हम 1 से i के मूल्य में वृद्धि कर रहे हैं, इसलिए स्थिति कभी नहीं होगी false
। यह लूप को असीम रूप से निष्पादित करने का कारण होगा।
हम रिक्त स्थान के साथ स्थिति को बदलकर एक अनंत लूप भी बना सकते हैं। उदाहरण के लिए,
(;) के लिए (/ लूप के लिए शरीर)
या
के लिए (आरंभीकरण; इट्रेटर) (// लूप के लिए शरीर)