C# में IF, Switch, For, While लूप स्टेटमेंट के उदाहरण।

⚡ स्मार्ट सारांश

C# में सशर्त कथन और लूप, तर्क के आधार पर कोड के ब्लॉक को चलाकर या दोहराकर प्रोग्राम के प्रवाह को नियंत्रित करते हैं। if, switch, while और for कथन प्रोग्राम को निर्णय लेने और कुशलतापूर्वक पुनरावृति करने में सक्षम बनाते हैं।

  • 🔀 प्रवाह नियंत्रण: सशर्त कथन निष्पादन के क्रम को बदल देते हैं, जिससे प्रोग्राम केवल उन्हीं कथनों को चलाता है जो उसके तर्क से मेल खाते हैं।
  • यदि कथन: इफ स्टेटमेंट एक बूलियन एक्सप्रेशन का मूल्यांकन करता है और जब यह सत्य होता है तो एक ब्लॉक को चलाता है और जब असत्य होता है तो दूसरे ब्लॉक को चलाता है।
  • 🔢 स्विच स्टेटमेंट: स्विच स्टेटमेंट एक मान की तुलना कई केस लेबल से करता है और मिलान मिलने पर रुकने के लिए ब्रेक का उपयोग करता है।
  • 🔁 While लूप: while लूप स्टेटमेंट के एक ब्लॉक को तब तक दोहराता है जब तक उसकी कंडीशन सही रहती है, जो कि अज्ञात संख्या में पुनरावृत्तियों के लिए उपयुक्त है।
  • 🔄 पाश के लिए: फॉर लूप एक ही पंक्ति में काउंटर को इनिशियलाइज़ करता है, उसका परीक्षण करता है और उसे बढ़ाता है, जो तब आदर्श होता है जब दोहराव की संख्या ज्ञात हो।
  • 🤖 एआई सहायता: GitHub Copilot if, switch और loop लॉजिक का ड्राफ्ट तैयार करता है, जबकि ML.NET मशीन लर्निंग पाइपलाइनों को ब्रांच करने के लिए उन्हीं शर्तों का पुन: उपयोग करता है।

C# सशर्त कथन

प्रवाह नियंत्रण और सशर्त कथन

किसी भी प्रोग्रामिंग भाषा में प्रोग्राम के प्रवाह को बदलने के लिए प्रवाह नियंत्रण और सशर्त कथन उपलब्ध होते हैं।

उदाहरण के लिए, यदि कोई व्यक्ति किसी निश्चित तर्क के आधार पर केवल कथनों के एक विशेष समूह को निष्पादित करना चाहता है, तो प्रवाह नियंत्रण और सशर्त कथन उपयोगी होंगे।

जैसे-जैसे हम C# में उपलब्ध विभिन्न कथनों को देखेंगे, आपको बेहतर समझ प्राप्त होगी।

कृपया ध्यान दें कि नीचे दिया गया सारा कोड Program.cs फ़ाइल में बनाया गया है।

1) यदि कथन

if स्टेटमेंट का उपयोग स्टेटमेंट के एक सेट को निष्पादित करने से पहले बूलियन एक्सप्रेशन का मूल्यांकन करने के लिए किया जाता है। यदि एक्सप्रेशन true होता है, तो यह स्टेटमेंट के एक सेट को चलाएगा, अन्यथा यह स्टेटमेंट के दूसरे सेट को चलाएगा।

नीचे दिए गए उदाहरण में, 'value' नामक एक वेरिएबल की तुलना की गई है। यदि वेरिएबल का मान 10 से कम है, तो एक स्टेटमेंट चलेगा, अन्यथा दूसरा स्टेटमेंट चलेगा।

यदि कथन

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program 
 {
  static void Main(string[] args) 
  {
   Int32 value = 11;
   
   if(value<10)
   {
    Console.WriteLine("Value is less than 10");
   }
   else
   {
    Console.WriteLine("Value is greater than 10");
   }
    Console.ReadKey();
  }
 }
}

Code स्पष्टीकरण: -

  1. हम सबसे पहले value नामक एक वेरिएबल को परिभाषित करते हैं और उसका मान 11 पर सेट करते हैं।
  2. फिर हम 'if' कथन का उपयोग करके जाँचते हैं कि क्या मान चर के 10 से कम है। परिणाम या तो सत्य होगा या असत्य।
  3. यदि if स्थिति का मूल्यांकन सत्य होता है, तो हम कंसोल पर "मान 10 से कम है" संदेश भेजते हैं।
  4. यदि if स्थिति का मूल्यांकन गलत होता है, तो हम कंसोल पर "मान 10 से अधिक है" संदेश भेजते हैं।

यदि उपरोक्त कोड ठीक से दर्ज किया गया है और प्रोग्राम सफलतापूर्वक निष्पादित होता है, तो निम्नलिखित आउटपुट प्रदर्शित होगा।

आउटपुट:

यदि कथन

हम स्पष्ट रूप से देख सकते हैं कि 'if' कथन का मूल्यांकन गलत किया गया था। इसलिए कंसोल पर "मान 10 से अधिक है" संदेश भेजा गया था।

2) स्विच स्टेटमेंट

स्विच स्टेटमेंट 'if' स्टेटमेंट का एक संवर्द्धन है। यदि आपके पास कई अभिव्यक्तियाँ हैं जिनका एक बार में मूल्यांकन करने की आवश्यकता है, तो कई 'if' स्टेटमेंट लिखना एक समस्या बन जाती है।

स्विच स्टेटमेंट का उपयोग किसी एक्सप्रेशन का मूल्यांकन करने और एक्सप्रेशन के परिणाम के आधार पर अलग-अलग स्टेटमेंट चलाने के लिए किया जाता है। यदि एक शर्त का मूल्यांकन सत्य नहीं होता है, तो स्विच स्टेटमेंट अगली शर्त पर चला जाएगा और इसी तरह आगे भी चलता रहेगा।

आइए नीचे दिए गए उदाहरण से समझते हैं कि यह कैसे काम करता है। यहाँ, हम फिर से 'value' नामक एक वेरिएबल के मान की तुलना कर रहे हैं। फिर हम जाँचते हैं कि क्या मान 1, 2 या कुछ बिल्कुल अलग है।

स्विच कथन

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args) 
  {
   Int32 value=11;
   switch(value) 
   {
     case 1: Console.WriteLine("Value is 1");	
     break;
     case 2: Console.WriteLine("Value is 2");
     break;
     default: Console.WriteLine("value is different");
     break;
   }
  }
 }
}

Code स्पष्टीकरण: -

  1. हम सबसे पहले 'value' नामक एक वेरिएबल को परिभाषित करते हैं और उसका मान 11 पर सेट करते हैं।
  2. फिर हम चर 'value' का मान जांचने के लिए 'switch' कथन का उपयोग करते हैं।
  3. केस स्टेटमेंट का उपयोग विभिन्न शर्तों को सेट करने के लिए किया जाता है। शर्तों के आधार पर, स्टेटमेंट का एक सेट निष्पादित किया जा सकता है। स्विच स्टेटमेंट में कई केस शर्तें हो सकती हैं। पहला केस स्टेटमेंट यह जाँचता है कि क्या वेरिएबल का मान 1 के बराबर है।
  4. यदि पहला केस कथन सत्य है, तो संदेश "मान 1 है" कंसोल पर लिखा जाता है।
  5. एक बार शर्त सत्य हो जाने पर, ब्रेक स्टेटमेंट का उपयोग संपूर्ण स्विच स्टेटमेंट से अलग होने के लिए किया जाता है।
  6. डिफ़ॉल्ट स्थिति एक विशेष स्थिति है। इसका मतलब यह है कि अगर कोई भी केस एक्सप्रेशन सत्य नहीं है, तो डिफ़ॉल्ट स्थिति के लिए कथनों का सेट चलाएँ।

यदि उपरोक्त कोड सही तरीके से दर्ज किया गया है और प्रोग्राम सफलतापूर्वक निष्पादित किया गया है, तो निम्न आउटपुट प्रदर्शित किया जाएगा। आउटपुट डिफ़ॉल्ट मान “मान भिन्न है” प्रिंट करता है, क्योंकि कोई भी शर्त पूरी नहीं होती है।

आउटपुट:

स्विच कथन

3) जबकि लूप

while loop का उपयोग पुनरावृत्तीय उद्देश्यों के लिए किया जाता है। मान लीजिए कि यदि आप कथनों के एक निश्चित सेट को एक निश्चित संख्या में बार-बार दोहराना चाहते हैं, तो while loop का उपयोग किया जाता है।

नीचे दिए गए हमारे उदाहरण में, हम 'i' चर का मान प्रदर्शित करने के लिए while कथन का उपयोग करते हैं। while कथन का उपयोग मान को 3 बार प्रदर्शित करने के लिए किया जाता है।

घुमाव के दौरान

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args) 
  {
   Int32 value=3,i=0;
   
   while(i<value)
   {
    Console.WriteLine(i);
    i=i+1;
   }
    Console.ReadKey(); 
  }
 }
}

Code स्पष्टीकरण: -

  1. दो पूर्णांक चर परिभाषित हैं, एक value है और दूसरा 'i' है। value चर का उपयोग ऊपरी सीमा के रूप में किया जाता है, जिस तक हमें अपने while कथन को पुनरावृत्त करना चाहिए। और 'i' वह चर है जिसे पुनरावृत्त के दौरान संसाधित किया जाएगा।
  2. while कथन में, 'i' का मान लगातार ऊपरी सीमा के विरुद्ध जांचा जाता है।
  3. यहाँ हम कंसोल पर 'i' का मान प्रदर्शित करते हैं। हम 'i' का मान भी बढ़ाते हैं।

यदि उपरोक्त कोड ठीक से दर्ज किया गया है और प्रोग्राम सफलतापूर्वक निष्पादित होता है, तो निम्नलिखित आउटपुट प्रदर्शित होगा।

आउटपुट:

घुमाव के दौरान

यहाँ आप देख सकते हैं कि while कथन को 3 बार निष्पादित किया गया है और एक ही समय में वृद्धि की गई है। और हर बार, यह चर 'i' का वर्तमान मान प्रदर्शित करता है।

4) लूप के लिए

'फॉर' लूप का उपयोग पुनरावृत्ति कार्यों के लिए भी किया जाता है। मान लीजिए कि आप कथनों के एक निश्चित समूह को एक निश्चित संख्या में दोहराना चाहते हैं, तो 'फॉर' लूप का उपयोग किया जाता है।

नीचे दिए गए हमारे उदाहरण में, हम 'for' कथन का उपयोग चर 'i' का मान प्रदर्शित करने के लिए करते हैं। 'for' कथन का उपयोग मान को 3 बार प्रदर्शित करने के लिए किया जाता है।

पाश के लिए

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args) 
  {
   for(Int32 i=0;i<3;i++)
   {
    Console.WriteLine(i);
   }
    Console.ReadKey(); 
  
  }
 }
}

Code स्पष्टीकरण: -

  1. 'for' कीवर्ड का प्रयोग 'for loop' कथन को शुरू करने के लिए किया जाता है।
  2. 'फॉर लूप' में हम 3 चीजें परिभाषित करते हैं। पहला है किसी वैरिएबल के मान को इनिशियलाइज़ करना, जिसका उपयोग 'फॉर लूप' में किया जाएगा।
  3. दूसरा तरीका है 'i' के मान की ऊपरी सीमा से तुलना करना। हमारे मामले में, ऊपरी सीमा 3 (i<3) का मान है।
  4. अंत में, हम 'i' का मान तदनुसार बढ़ाते हैं।
  5. यहां हम कंसोल पर 'i' का मान प्रदर्शित करते हैं।

यदि उपरोक्त कोड ठीक से दर्ज किया गया है और प्रोग्राम सफलतापूर्वक निष्पादित होता है, तो निम्नलिखित आउटपुट प्रदर्शित होगा।

आउटपुट:

पाश के लिए

यहाँ आप देख सकते हैं कि 'for' कथन 3 बार निष्पादित हुआ है। और हर बार, इसने चर 'i' का वर्तमान मान प्रदर्शित किया।

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

if स्टेटमेंट रेंज और जटिल बूलियन स्थितियों को संभालता है, जबकि switch स्टेटमेंट एक मान की तुलना कई निश्चित केस लेबल से करता है। कई अलग-अलग मानों के लिए switch स्टेटमेंट अधिक स्पष्ट है, जबकि if-else स्टेटमेंट रेंज, कई वेरिएबल्स और लॉजिकल ऑपरेटर्स के लिए उपयुक्त है।

नेस्टेड इफ स्टेटमेंट में एक इफ स्टेटमेंट दूसरे के अंदर होता है, इसलिए अंदर की शर्त की जांच तभी होती है जब बाहर की शर्त सही हो। इससे प्रोग्राम कई निर्भर शर्तों की जांच कर सकता है, हालांकि अधिक नेस्टिंग से पठनीयता कम हो जाती है।

while लूप प्रत्येक पुनरावृति से पहले अपनी स्थिति की जाँच करता है, इसलिए यह शून्य बार भी चल सकता है। do-while लूप बॉडी के बाद स्थिति की जाँच करता है, इसलिए यह हमेशा कम से कम एक बार चलता है, जो मेनू और इनपुट सत्यापन के लिए उपयुक्त है।

ब्रेक स्टेटमेंट लूप या स्विच से तुरंत बाहर निकल जाता है, जबकि कंटिन्यू स्टेटमेंट वर्तमान चरण के शेष भाग को छोड़कर अगले चरण पर चला जाता है। दोनों ही प्रवाह को बदलते हैं, लेकिन केवल ब्रेक ही लूप को पूरी तरह समाप्त करता है।

त्रिपक्षीय ऑपरेटर ?: इफ-एल्स का एक संक्षिप्त रूप है। यह एक शर्त का मूल्यांकन करता है, शर्त सही होने पर पहला मान और गलत होने पर दूसरा मान लौटाता है, जिससे एक संक्षिप्त एक-पंक्ति असाइनमेंट बनता है।

foreach लूप, इंडेक्स या काउंटर की आवश्यकता के बिना, ऐरे या लिस्ट जैसे कलेक्शन के प्रत्येक एलिमेंट पर इटरेट करता है। यह कलेक्शन को सुरक्षित रूप से पढ़ता है और सामान्य ऑफ-बाय-वन और आउट-ऑफ-रेंज त्रुटियों को रोकता है।

हाँ। GitHub Copilot Visual Studio के अंदर किसी टिप्पणी या विधि नाम से if, switch, while और for ब्लॉक का सुझाव देता है। VS Code. Revसही स्थितियों और लूप सीमाओं के लिए प्रत्येक सुझाव की समीक्षा करें, क्योंकि कोपायलट एक-बाय-वन त्रुटियां उत्पन्न कर सकता है।

ML.NET पाइपलाइन फीचर मानों पर शाखा बनाने के लिए C# सशर्त कथनों और प्रशिक्षण पंक्तियों पर पुनरावृति करने के लिए लूप का उपयोग करती हैं। यही if, switch और for लॉजिक डेटा तैयार करता है और भविष्यवाणियों को रूट करता है।ping एक मशीन लर्निंग वर्कफ़्लो जो दृढ़ता से टाइप किया गया है।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: