loops c control statements
C # में लूप्स प्रोग्राम को कोड मल्टीपल टाइम्स के एक ब्लॉक को चलाने की अनुमति देते हैं। यह ट्यूटोरियल विभिन्न लूपों जैसे कि लूप्स के लिए, लूप्स के लिए उदाहरणों आदि के साथ समझाता है:
हमारे पिछले ट्यूटोरियल में, हमने अलग-अलग के बारे में सीखा सी # ऑपरेटर्स की तुलना में एक आवश्यक निष्पादन प्रवाह का पालन करने के लिए निर्णय लेने के बयान के साथ संयोजन के रूप में इस्तेमाल किया जा सकता है।
इस ट्यूटोरियल में, हम C # लूप स्टेटमेंट्स पर चर्चा करेंगे जो प्रोग्राम को पुनरावृत्त तर्क को निष्पादित करने की अनुमति देते हैं।
=> हमारे अंतिम सी # प्रशिक्षण गाइड के लिए यहां देखें
आप क्या सीखेंगे:
लूप्स इन C #: ए कम्प्लीट ओवरव्यू
सी # में लिखे गए सभी कथनों को क्रमिक रूप से निष्पादित किया जाता है, लेकिन एक ऐसा परिदृश्य हो सकता है जहां कार्यक्रम को कई बार एक निश्चित कोड स्निपेट निष्पादित करने की आवश्यकता होती है, इस तरह की स्थिति को संभालने के लिए, सी # नियंत्रण बयान प्रदान करता है जिसका उपयोग जटिल प्रवाह को संभालने के लिए किया जा सकता है। ।
एक लूप प्रोग्राम को C # में एक सामान्य कथन का पालन करके कई बार कोड को ब्लॉक करने की अनुमति देता है। C # विभिन्न प्रोग्रामिंग निष्पादन आवश्यकताओं को संभालने के लिए विभिन्न प्रकार के लूप प्रदान करता है।
नियंत्रण कथन
इससे पहले कि हम छोरों पर काम करना शुरू करें, हमें यह जानना होगा कि नियंत्रण कथन क्या है। एक नियंत्रण कथन लूप को अपने सामान्य अनुक्रम से अपने पाठ्यक्रम को बदलने की अनुमति देता है। C # प्रोग्रामिंग भाषा निम्नलिखित बुनियादी लूप नियंत्रण कथन प्रदान करती है।
जारी बयान
C # में जारी स्टेटमेंट निम्न कारणों से उपयोग किया जाता है:
- बीच में किसी भी कोड को छोड़ते समय लूप के अगले पुनरावृत्ति को निष्पादित करने के लिए।
जारी स्टेटमेंट का सिंटैक्स है “ जारी रखें;'
ब्रेक स्टेटमेंट
C # में ब्रेक स्टेटमेंट का उपयोग निम्नलिखित कारणों से किया जाता है:
प्रोग्राम जो आपके आईपी पते को छिपाते हैं
- इसका उपयोग एक लूप को समाप्त करने के लिए किया जाता है ताकि कार्यक्रम अगले लूप स्टेटमेंट के साथ जारी रह सके। नेस्टेड लूप्स में इसका उपयोग आंतरिक लूप के निष्पादन को रोकने के लिए किया जा सकता है, जिससे वर्तमान कोड के बाद अगले स्टेटमेंट को प्रोग्राम कंट्रोल प्रदान किया जा सकता है।
- यह एक बयान में समाप्त करने के लिए इस्तेमाल किया जा सकता है स्विच केस।
ब्रेक स्टेटमेंट का सिंटैक्स है “ टूटना;'
घुमाव के दौरान
जबकि लूप एक शर्त को मान्य करता है और तब कोड ब्लॉक को निष्पादित करता है जब तक कि स्थिति सही है, तब तक परिभाषित किया जाता है।
वाक्य - विन्यास
While(Boolean Condition) { //code block// }
महत्वपूर्ण संकेत:
- बूलियन स्टेटमेंट कोड के निष्पादन से पहले मान्य है।
- यदि बूलियन अभिव्यक्ति सही के रूप में मान्य है, तभी कोड निष्पादित किया जाता है।
- एक बार कोड ब्लॉक निष्पादित होने के बाद, मूल्यांकन के लिए नियंत्रण एक बूलियन स्टेटमेंट में वापस आ जाएगा।
- लूप तब तक निष्पादित होता रहेगा जब तक बूलियन अभिव्यक्ति सही का मूल्यांकन नहीं करती है।
- यदि बूलियन अभिव्यक्ति झूठी का मूल्यांकन करती है, तो कोड ब्लॉक छोड़ दिया जाता है और लूप निष्पादित होने के दौरान कोड की अगली पंक्ति को निष्पादित किया जाता है।
- बूलियन अभिव्यक्ति के साथ उपयोग किए गए चर को हमेशा अपडेट करना सुनिश्चित करें, ताकि यह अपेक्षित पुनरावृत्ति पर लूप के अंत को पहचान सके।
- यदि लूप से जुड़े चर को अपडेट नहीं किया जाता है या हमेशा सही मूल्य देता है, तो यह एक अनंत लूप बन जाएगा।
एक सरल जबकि लूप का उदाहरण:
int a = 0; while (a <5) { Console.WriteLine(“The value of a is :”+a); a++; } Console.WriteLine(“The while block has been executed”);
कोड स्पष्टीकरण
उपरोक्त कार्यक्रम में, हमने बूलियन अभिव्यक्ति प्रदान की है (ए के रूप में<5) for “while”. It means that the loop will continue to execute the code snippet as long as the value of “a” is less than 5.
कोड ब्लॉक में, हम 'a' के मान को प्रिंट कर रहे हैं और फिर हमने वेतन वृद्धि ऑपरेटर को जोड़ा है। जैसा कि हमने पहले चर्चा की थी कि हमारे पिछले ट्यूटोरियल इन्क्रीमेंट ऑपरेटर का उपयोग पूर्णांक के मान को 1 से बढ़ाने के लिए किया जाता है। इसलिए, जैसे ही 'a' का मूल्य कंसोल पर प्रिंट किया जाता है, नियंत्रण वेतन वृद्धि ऑपरेटर से गुजर जाएगा, जिससे इसका आकार बढ़ जाएगा 1 से।
अब, नियंत्रण बूलियन अभिव्यक्ति का मूल्यांकन करने के लिए आगे बढ़ेगा। वर्तमान उदाहरण के लिए जैसा कि हमने पहले ही '0' के प्रारंभिक मूल्य को परिभाषित किया है, यह '1' द्वारा बढ़ेगा। तो, बूलियन अभिव्यक्ति बन जाएगी (1)<5) which will evaluate to “true” and the code block inside the loop will get executed.
एक बार 'ए' का मूल्य 5 तक पहुंचने के बाद, निष्पादन बंद हो जाएगा क्योंकि बूलियन अभिव्यक्ति अब झूठी के रूप में पढ़ेगी। एक बार बूलियन अभिव्यक्ति झूठी हो जाने पर, नियंत्रण लूप में मौजूद होगा और कोड की अगली पंक्ति को ब्लॉक के बाहर निष्पादित करेगा।
यदि प्रोग्राम निष्पादित होता है तो आउटपुट नीचे दिखाया जाएगा:
उत्पादन
A का मान: 0 है
एक का मूल्य है: 1
A: 2 का मान है
A: 3 का मान है
A: 4 का मान है
जबकि ब्लॉक को निष्पादित कर दिया गया है
लूप करते समय
जबकि लूप एक अंतर के साथ लूप के समान होता है, स्थिति का मूल्यांकन लूप के अंत में किया जाता है, बजाय शुरुआत के क्योंकि हमने थोड़ी देर के लूप के मामले में इसकी चर्चा की। यह इस लूप को एक अनूठी विशेषता प्रदान करता है यानी यह कम से कम एक बार लूप सीमा के अंदर कथन को निष्पादित करेगा।
दूसरी ओर, अन्य लूप शुरुआत में बूलियन अभिव्यक्ति का मूल्यांकन करते हैं, जिसका अर्थ है कि अगर अभिव्यक्ति झूठी लूप निष्पादित नहीं होगी।
वाक्य - विन्यास
do { //code block for execution// } while( Boolean expression );
महत्वपूर्ण संकेत:
sdd को hdd क्लोन करने का सबसे अच्छा प्रोग्राम
- 'करते समय' एक समय लूप के समान काम करता है। कीवर्ड को कोड ब्लॉक की शुरुआत में रखा जाता है और कोड ब्लॉक के बाद रखा जाता है।
- बूलियन अभिव्यक्ति का मूल्यांकन शुरुआत के बजाय लूप के अंत में किया जाता है। यदि स्थिति सही है, तो लूप जारी रहता है। यदि अभिव्यक्ति झूठी हो जाती है, तो लूप वहां पर ही समाप्त हो जाता है।
- 'करते समय' कम से कम एक बार के लिए लूप सीमाओं के अंदर कोड ब्लॉक निष्पादित करता है।
एक सरल दोहा-लूप का उदाहरण:
int nmbr = 5; /* do loop starts*/ do { Console.WriteLine('value of nmbr is '+ nmbr); nmbr++; } while (nmbr <10); Console.ReadLine();
कोड स्पष्टीकरण
उपरोक्त कोड में, हमने एक पूर्णांक, “nmbr” को मान 5 के साथ घोषित किया है। फिर हमने “Do” कीवर्ड लगाकर लूप शुरू किया है। करो और घुंघराले ब्रेस के अंदर हमने उस कोड को परिभाषित किया है जिसे हम निष्पादित करना चाहते हैं। यहाँ, हम सिर्फ कंसोल के लिए nmbr पूर्णांक के मान को प्रिंट कर रहे हैं। आप कोष्ठक के अंदर अपना स्वयं का जटिल कोड लिख सकते हैं।
जैसा कि हम देख सकते हैं, हमने nmbr के मूल्य को मुद्रित करने के बाद, हम इसे बढ़ा रहे हैं। एक बार कोड ब्लॉक संसाधित हो जाने के बाद, नियंत्रण 'जबकि' में चला जाता है, जहां बूलियन अभिव्यक्ति का मूल्यांकन किया जाता है। यहाँ, जब तक nmbr का मान 10 से कम नहीं होगा, तब तक यह लूप को पुनरावृत्त करता रहेगा।
इसलिए, यदि हम इस कोड स्निपेट को निष्पादित करते हैं, तो निम्नलिखित आउटपुट देखे जा सकते हैं:
उत्पादन
nmbr का मान 5 है
एनएमबीआर का मूल्य 6 है
एनएमबीआर का मूल्य 7 है
एनएमबीआर का मूल्य 8 है
nmbr का मूल्य 9 है
एक बार, एनएमबीआर का मूल्य 10 तक पहुंच गया है (प्रत्येक पुनरावृत्ति के साथ बढ़ाकर)। तब जबकि स्थिति एक गलत मान लौटाएगी क्योंकि यह अब 10 से कम नहीं है। यह 'डू' जबकि लूप से बाहर निकलने के लिए नियंत्रण का कारण बनेगा और नियंत्रण कोड की अगली पंक्ति में जाएगा।
पाश के लिए
लूप के लिए C # 'जबकि' लूप की तुलना में काफी अलग सिंटैक्स का अनुसरण करता है। 'फॉर' लूप की स्थिति में सिंटैक्स के अंदर स्थिति का प्रारंभ और संशोधन शामिल है। यदि आप लूप के लिए प्रदर्शन करने की आवश्यकता की सही संख्या जानते हैं तो 'फॉर' लूप काफी उपयोगी है।
लूप के कोष्ठक के अंदर की परिभाषा में अर्धविराम द्वारा एक दूसरे से अलग किए गए तीन भाग होते हैं। पहला भाग इनिशियलाइज़ेशन है, फिर हमारे पास बूलियन एक्सप्रेशन है जिसके बाद पुनरावृति सूची है।
वाक्य - विन्यास
for(initializer; boolean expression; iteration list) { //code block for execution// }
अभिव्यक्ति का पहला भाग इनिशियलाइज़ेशन ब्लॉक है। इस अभिव्यक्ति का उपयोग पूर्णांक चर को आरंभ करने के लिए किया जाता है। यह लूप की शुरुआत में मूल्य प्रदान करेगा।
दूसरा भाग बूलियन अभिव्यक्ति है जिसका उपयोग लूप की तरह ही लूप की निरंतरता के लिए सही या गलत स्थिति का मूल्यांकन करने के लिए किया जाता है।
तीसरी अभिव्यक्ति पुनरावृति भाग है। यहाँ हम वृद्धि संचालकों या वेतन वृद्धि संचालकों का उपयोग निष्पादन आवश्यकताओं के अनुसार आरंभिक चर के मूल्य को बढ़ाने या घटाने के लिए कर सकते हैं।
महत्वपूर्ण संकेत:
- C # में लूप्स के लिए प्रोग्रामर को प्रदर्शन किए जाने वाले पुनरावृत्तियों की सटीक संख्या को परिभाषित करने की अनुमति देते हैं।
- लूप के लिए लूप के लिए एक स्थिति प्रदान करने के लिए बूलियन अभिव्यक्ति के साथ आरंभीकरण और पुनरावृत्ति अभिव्यक्ति भी शामिल है।
- लूप का उपयोग तब किया जाता है जब हम स्पष्ट रूप से लूप द्वारा आवश्यक पुनरावृत्ति की संख्या जानते हैं।
- चर का प्रारंभ लूप की शुरुआत में होता है।
- आरंभीकरण के बाद, बूलियन अभिव्यक्ति को मान्य करने के लिए दूसरे खंड पर नियंत्रण पारित किया जाता है। बूलियन अभिव्यक्ति जितनी चाहें उतनी जटिल हो सकती है लेकिन परिणाम हमेशा मूल्य के रूप में सही या गलत लौटना चाहिए।
- बूलियन अभिव्यक्ति के रूप में सच का मूल्यांकन करने के बाद, घुंघराले ब्रेस के भीतर कोड ब्लॉक निष्पादित किया जाता है और नियंत्रण फिर से लूप के शीर्ष पर चला जाता है और वेतन वृद्धि या कमी ऑपरेटर निष्पादित होता है।
- पुनरावृत्ति सूची निष्पादित होने के बाद नियंत्रण फिर से मूल्यांकन के लिए बूलियन अभिव्यक्ति की ओर जाता है और लूप पुनरावृत्ति करता है यदि यह 'सही' या लूप के बाहर अगली कोड लाइन निष्पादित होती है यदि यह गलत है।
लूप के लिए एक सरल का उदाहरण:
/* for loop starts*/ for(int i=0; i<5; i++) { Console.WriteLine('value of i is '+ i); }
कोड स्पष्टीकरण
उपरोक्त कोड में, हमने पूर्णांक i को 0. के रूप में आरंभीकृत किया है। तब हमने बूलियन अभिव्यक्ति प्रदान की थी कि यदि मैं 0 से कम है और एक वेतन वृद्धि ऑपरेटर है।
प्रारंभ लूप की शुरुआत में होता है, फिर कर्ल ब्रेसिज़ के अंदर कोड ब्लॉक के निष्पादन के बाद बूलियन स्थिति का मूल्यांकन किया जाता है। नियंत्रण फिर शीर्ष पर वेतन वृद्धि ऑपरेटर को दिया जाता है, जो प्रत्येक पुनरावृत्ति के दौरान i के मूल्य को 1 से बढ़ाता है।
अधिक स्पष्टता के लिए आउटपुट पर एक नजर डालते हैं।
उत्पादन
i का मान 0 है
i का मान 1 है
i का मान 2 है
i का मान 3 है
i का मान 4 है
प्रत्येक लूप के लिए
जब प्रत्येक प्रोग्राम को किसी सूची की सामग्री के माध्यम से पुनरावृति करने की आवश्यकता होती है, तो प्रत्येक लूप का उपयोग किया जाता है। इसका उपयोग सरणी सूचियों या सरणियों जैसे संग्रह के लिए किया जा सकता है।
वाक्य - विन्यास
foreach(item_type iterative_variable in list_type) { //code block for execution// }
सिंटैक्स में 'item_type' सूची में शामिल आइटम का प्रकार है। उदाहरण के लिए, अगर हम एक पूर्णांक सरणी का उपयोग कर रहे हैं तो प्रकार पूर्णांक या इंट होगा।
“Iterative_variable” आपके द्वारा चुना गया एक चर नाम है और “in” एक कीवर्ड है जिसका उपयोग किया जाता है।
'List_type' वह सूची प्रकार है जिसका आप उपयोग कर रहे हैं। उदाहरण के लिए, अगर हम पूर्णांक सरणी का उपयोग कर रहे हैं तो list_type int सरणी नाम होगा।
महत्वपूर्ण संकेत:
- प्रत्येक लूप के लिए निर्दिष्ट संग्रह में मौजूद प्रत्येक तत्व के खिलाफ कोड ब्लॉक निष्पादित करता है।
- प्रत्येक लूप केवल पढ़ने के लिए है, इसलिए यह निष्पादन के दौरान आपको पुनरावृत्ति चर को संशोधित करने की अनुमति नहीं देता है।
- इस लूप का उपयोग करने वाले प्रत्येक पुनरावृत्ति के लिए सूची से एक नया मान प्राप्त होता है। मान तब केवल पढ़ने योग्य चर के अंदर रखा जाता है।
- एक बार सूची के सभी तत्व पुनरावृत्ति के दौरान समाप्त हो गए हों, तो नियंत्रण कोड की अगली पंक्ति में जाएगा।
प्रत्येक लूप के लिए एक सरल का उदाहरण:
/* specifies list*/ int() list = {1,2,3,4,5}; /* foreach loop starts*/ foreach (int nmbr in list) { Console.WriteLine('Numbers present in list are '+ nmbr); }
कोड स्पष्टीकरण
सबसे पहले, हमने पहली पंक्ति में एक सरणी 'सूची' को परिभाषित किया है। फिर हमने प्रत्येक लूप के लिए उपयोग किया है और सरणी के सभी मूल्यों को प्रिंट करने के लिए।
लूप स्टेटमेंट के अंदर, हमने एक पूर्णांक प्रकार चर 'nmbr' घोषित किया है जिसके बाद कीवर्ड 'इन' है और फिर उसी सरणी के बाद आता है। तो, यहां हमारे कहने का मतलब यह है कि हम 'सूची' के अंदर एक पूर्णांक 'nmbr' की तलाश कर रहे हैं।
अगला, कथन सभी मानों को प्रिंट करने के लिए एक सरल कोड ब्लॉक है। हम चर 'nmbr' को प्रिंट कर रहे हैं, और जैसा कि पहले चर्चा की गई है कि यह केवल पढ़ने योग्य चर है और प्रत्येक पुनरावृत्ति के साथ एक नया मान संग्रहीत करता है।
बेहतर समझ के लिए आउटपुट पर एक नजर डालते हैं।
उत्पादन
सूची में मौजूद नंबर 1 हैं
सूची में मौजूद संख्या 2 हैं
सूची में मौजूद संख्या 3 हैं
सूची में मौजूद संख्या 4 हैं
सूची में मौजूद संख्या 5 हैं
अपरिमित गांठ
एक लूप अनंत समय तक जारी रह सकता है यदि लूप को परिभाषित करने वाली स्थिति कभी भी गलत मान नहीं देती है। आमतौर पर लूप के लिए या जबकि लूप का उपयोग अनंत लूप ऑपरेशन करने के लिए किया जा सकता है।
फुर्तीली और झरना परीक्षण के बीच अंतर
लूप के लिए अनंत लूप का उपयोग करना
हम अनंत लूप ऑपरेशन करने के लिए 'लूप के लिए' का उपयोग कर सकते हैं क्योंकि तीनों में से कोई भी कथन अनिवार्य नहीं है। इसलिए यदि हम सभी कथनों को खाली छोड़ देते हैं, तो यह एक अनंत लूप बनाएगा।
/* for loop starts*/ for (; ;) { Console.WriteLine('infinite loop”); }
यह लूप कंसोल में अनंत समय के लिए 'अनंत लूप' को प्रिंट करता रहेगा।
अनंत लूप का उपयोग करते हुए लूप
जबकि लूप का उपयोग अनंत लूप ऑपरेशन करने के लिए भी किया जा सकता है। हम एक ऐसी स्थिति प्रदान कर सकते हैं जो कभी झूठी नहीं हो सकती।
उदाहरण के लिए x> 0 और वेतन वृद्धि x हर बार 1 से शुरू होता है।
/* while loop starts*/ int x = 1; while(x>0) { Console.WriteLine('infinite loop”); x++; }
यह कंसोल पर 'अनंत लूप' को प्रिंट करता रहेगा क्योंकि x का मान हमेशा 1 से अधिक रहेगा। इसलिए जबकि स्थिति हमेशा 'सही' मान पर लौटेगी, और कोड ब्लॉक अंदर रहते समय निष्पादित होता रहेगा।
निष्कर्ष
लूप आपको बार-बार कोड के एक ब्लॉक को पुनरावृत्त करने की अनुमति देता है। C # प्रोग्रामिंग लैंग्वेज ',', 'जबकि', 'जबकि' और 'प्रत्येक के लिए' जैसे लूप का उपयोग करने के लिए अलग-अलग स्टेटमेंट प्रदान करती है।
जबकि लूप कोड के एक ब्लॉक को क्रियान्वित करता है जब तक कि ब्लॉक के अंदर का भाव सही है। लूप करते समय लूप उपयोगकर्ता को कम से कम एक बार कोड के एक ब्लॉक को निष्पादित करने की अनुमति देता है और फिर यह झूठे रिटर्न के दौरान अंदर की अभिव्यक्ति तक इसे चालू रखेगा।
लूप का उपयोग तब किया जाता है जब हमें पहले से ही पता होता है कि हमें कितनी बार कोड को पुनरावृत्त करने की आवश्यकता है। प्रत्येक लूप का उपयोग कोड के दिए गए ब्लॉक का उपयोग करके सूची / संग्रह के अंदर प्रत्येक तत्व को निष्पादित करने के लिए किया जाता है।
आम तौर पर, एक लूप निष्पादित होता है जब तक कि नियंत्रण अभिव्यक्ति सही नहीं हो जाती है लेकिन उसके निष्पादन प्रवाह को बदलने के लिए जारी या विराम स्टेटमेंट का उपयोग किया जा सकता है।
कोड अनंत समय की एक ब्लॉक को निष्पादित करने के लिए या बयान करते समय अनंत लूप बनाना संभव है। ये कोड ब्लॉक निष्पादित करते रहेंगे क्योंकि लूप स्टेटमेंट को परिभाषित करने वाला एक्सप्रेशन हमेशा सही रहेगा।
=> आसान सी # प्रशिक्षण गाइड के लिए यहां देखें
अनुशंसित पाठ
- पायथन लूप्स - उदाहरण के लिए, जबकि, नेस्टेड लूप्स उदाहरण के लिए
- VBScript लूप्स: लूप के लिए, लूप करें और जबकि लूप
- पायथन कंट्रोल स्टेटमेंट (पायथन जारी, ब्रेक और पास)
- उदाहरणों के साथ लूप कंस्ट्रक्शंस सी ++ में
- यूनिक्स शैल लूप प्रकार: लूप के लिए, जबकि लूप के लिए, यूनिक्स में लूप तक
- कीवर्ड व्यू में सशर्त और लूप स्टेटमेंट जोड़ना - QTP ट्यूटोरियल # 4
- उदाहरणों के साथ यूनिक्स शैल स्क्रिप्टिंग ट्यूटोरियल
- कोड उदाहरणों के साथ मॉकिटो में मोक्स और जासूस बनाना