1. हमारे जीवन में फँस जाता है

बहुत बार हमारे जीवन में हमसे एक ही तरह के कार्यों को कई बार करने की आवश्यकता होती है। उदाहरण के लिए, मान लीजिए कि मुझे बहुत सारे पृष्ठों वाले दस्तावेज़ को स्कैन करने की आवश्यकता है। कि हम एक ही प्रक्रिया को बार-बार दोहराते हैं:

  • पहले पेज को स्कैनर पर रखें
  • स्कैन बटन दबाएं
  • अगला पेज स्कैनर पर रखें

यह मैन्युअल रूप से करना मुश्किल है। यह अच्छा होगा अगर इस प्रक्रिया को किसी तरह स्वचालित किया जा सके।

या एक अन्य उदाहरण पर विचार करें: मान लें कि मैं अपने इनबॉक्स में सभी अपठित ईमेल को स्पैम के रूप में चिह्नित करना चाहता हूं। एक बार मुझे प्रत्येक ईमेल को एक बार में चुनना होगा और इसे स्पैम के रूप में चिह्नित करना होगा।

लेकिन प्रोग्रामर आलसी हैं, इसलिए उन्होंने इस प्रक्रिया को बहुत पहले ही स्वचालित कर दिया था: अब आप बस अक्षरों की किसी भी सूची का चयन करें और "स्पैम के रूप में चिह्नित करें" पर क्लिक करें, और फिर आपका ईमेल क्लाइंट सूची के माध्यम से चलता है और प्रत्येक ईमेल को स्पैम फ़ोल्डर में ले जाता है।

हम यहां क्या कह सकते हैं? जब कोई कंप्यूटर या प्रोग्राम एक क्लिक के साथ सैकड़ों या हजारों नीरस संचालन कर सकता है तो यह अत्यंत सुविधाजनक है। और अब आप यह भी सीखेंगे कि यह कैसे करना है।


2. whileपाश

इफ-एल्स स्टेटमेंट ने हमारी प्रोग्रामिंग क्षमताओं का काफी विस्तार किया, जिससे विभिन्न परिस्थितियों में अलग-अलग क्रियाएं करने वाले प्रोग्राम लिखना संभव हो गया। लेकिन एक और चीज है जो हमारे कार्यक्रमों को अधिक शक्तिशाली बना देगी - लूप

Java में 4 प्रकार के लूप होते हैं: while,, और । अब हम इनमें से सबसे पहले में खुदाई करेंगे।forfor-eachdo-while

एक whileलूप बहुत आसान है। इसमें केवल दो भाग होते हैं: एक स्थिति और एक लूप बॉडी । जब तक स्थिति है तब तक लूप बॉडी को बार-बार निष्पादित किया जाता है true। सामान्य तौर पर, एक whileलूप इस तरह दिखता है:

while (condition)
   statement;
whileएकल कथन वाले लूप के लिए संकेतन
while (condition)
{
   block of statements
}
whileबयानों के एक ब्लॉक के साथ एक पाश के लिए संकेतन

यह बहुत सरल है। जब तक लूप की स्थिति बराबर होती है तब तक स्टेटमेंट या स्टेटमेंट के ब्लॉक को बार -बार निष्पादित किया जाता है ।true

यह इस तरह काम करता है: सबसे पहले, स्थिति की जाँच की जाती है। यदि यह सत्य है, तो लूप बॉडी को निष्पादित किया जाता है ( कथन या बयानों का ब्लॉक )। उसके बाद फिर से स्थिति की जाँच की जाती है और लूप बॉडी को फिर से निष्पादित किया जाता है। और इसी तरह जब तक स्थिति झूठी नहीं हो जाती।

यदि स्थिति हमेशा सत्य होती है , तो कार्यक्रम चलना कभी बंद नहीं होगा। यह स्थायी रूप से लूप में फंस जाएगा।

यदि पहली बार चेक किए जाने पर स्थिति झूठी है , तो लूप का शरीर एक बार भी निष्पादित नहीं होगा।


3. लूप के उदाहरण

यहां कार्रवाई में लूप के कुछ व्यावहारिक उदाहरण दिए गए हैं।

कोड व्याख्या
int n = 5;
while (n > 0)
{
   System.out.println(n);
   n--;
}
स्क्रीन पर 5 लाइनें प्रदर्शित होंगी:
5
4
3
2
1
कोड व्याख्या
int  n = 0;
while (n < 10)
{
   System.out.println(n);
   n++;
}
स्क्रीन पर 10 लाइनें प्रदर्शित होंगी:
0
1
...
8
9
कोड व्याख्या
Scanner console = new Scanner(System.in);
while(console.hasNextInt())
{
   int x = console.nextInt();
} 
जब तक नंबर दर्ज किए जाते हैं तब तक प्रोग्राम कीबोर्ड से नंबर पढ़ता है।
कोड व्याख्या
while (true)
   System.out.println("C");
कार्यक्रम स्क्रीन पर पत्र को अंतहीन रूप से प्रिंट करेगा।C
कोड व्याख्या
Scanner console = new Scanner(System.in);
boolean isExit = false;
while (!isExit)
{
   String s = console.nextLine();
   isExit = s.equals("exit");
}
प्रोग्राम कीबोर्ड से लाइनें पढ़ेगा

तक exitदर्ज किया जाता है।

पिछले उदाहरण में, equals()स्ट्रिंग की तुलना करने के लिए विधि का उपयोग किया जाता है। यदि तार बराबर हैं, तो फ़ंक्शन वापस आ जाएगा true। यदि तार बराबर नहीं हैं, तो यह वापस आ जाएगा false



4. लूप के भीतर लूप

जैसा कि आपने सशर्त बयानों के बारे में सीखा, आपने देखा कि आप कई सशर्त बयानों को जोड़कर जटिल तर्क को लागू करने के लिए उनका उपयोग कर सकते हैं। दूसरे शब्दों में, एक बयान ifके अंदर एक बयान का उपयोग करके ।if

आप यही काम लूप्स के साथ भी कर सकते हैं। एक लूप के भीतर एक लूप लिखने के लिए, आपको पहले लूप के शरीर के अंदर दूसरा लूप लिखना होगा। यह कुछ ऐसा दिखाई देगा:

while (condition for outer loop)
{
   while (condition for inner loop)
   {
     block of statements
   }
}
whileलूप ( बयानों के एक ब्लॉक के साथ ) दूसरे whileलूप के अंदर

आइए तीन कार्यों को देखें।

कार्य 1 । मान लीजिए कि हम एक प्रोग्राम लिखना चाहते हैं जो शब्द को Mom4 बार स्क्रीन पर प्रदर्शित करता है। एक लूप वही है जो हमें चाहिए। और हमारा कोड कुछ इस तरह दिखेगा:

कोड व्याख्या
int  n = 0;
while (n < 4)
{
   System.out.println("Mom");
   n++;
}
स्क्रीन पर 4 लाइनें प्रदर्शित होंगी:
Mom
Mom
Mom
Mom

कार्य 2 । हम एक ऐसा प्रोग्राम लिखना चाहते हैं जो Aएक पंक्ति में 5 अक्षर प्रदर्शित करता हो। ऐसा करने के लिए, हमें एक बार फिर से लूप की आवश्यकता है। कोड इस तरह दिखेगा:

कोड व्याख्या
int n = 0;
while (n < 5)
{
   System.out.print("A");
   n++;
}
की जगह println()हम इस्तेमाल करेंगे print()। अन्यथा, प्रत्येक अक्षर A एक अलग पंक्ति में समाप्त हो जाएगा।

स्क्रीन आउटपुट होगा:
AAAAA

कार्य 3Aहम अक्षर एस से युक्त एक आयत प्रदर्शित करना चाहते हैं । आयत में 5 स्तंभों द्वारा 4 पंक्तियाँ होनी चाहिए। इसे पूरा करने के लिए, अब हमें नेस्टेड लूप की जरूरत है। हम केवल अपना पहला उदाहरण लेंगे (वह जहां हम 4 पंक्तियों को आउटपुट करते हैं) और दूसरे उदाहरण से कोड के साथ एक पंक्ति को आउटपुट करने के लिए कोड को प्रतिस्थापित करेंगे।

कोड व्याख्या
int n = 0;

while (n < 4) { int m = 0;
while (m < 5) { System.out.print("A"); m++; }
System.out.println(); n++; }
 
बाहरी पाश बैंगनी है। यह nलूप के पुनरावृत्तियों की संख्या की गणना करने के लिए चर का उपयोग करता है।

भीतर का पाश हरा है। यह mलूप पुनरावृत्तियों की संख्या की गणना करने के लिए चर का उपयोग करता है। आंतरिक लूप पूरा होने के बाद

हमें स्पष्ट रूप से कर्सर को अगली पंक्ति में ले जाना होगा। अन्यथा, प्रोग्राम द्वारा प्रिंट किए जाने वाले सभी अक्षर एक पंक्ति में समाप्त हो जाएंगे।

स्क्रीन आउटपुट होगा:
AAAAA
AAAAA
AAAAA
AAAAA

लूप पुनरावृत्तियों की संख्या की गणना करने के लिए बाहरी और आंतरिक लूप को विभिन्न चर का उपयोग करना चाहिए। System.out.println()हमें कमांड को इनर लूप के बाद भी जोड़ना पड़ा , क्योंकि वह लूप Aउसी लाइन पर अक्षर s प्रदर्शित करता है। एक बार किसी रेखा पर अक्षर प्रदर्शित होने के बाद, किसी को कर्सर को एक नई पंक्ति में ले जाना होता है।



5. लूप्स जावा बनाम पास्कल की तुलना करना

आप में से कई लोगों ने हाई स्कूल में पास्कल की पढ़ाई की है। आपके लिए यहां सामग्री को समझना आसान बनाने के लिए, whileपास्कल और जावा में लिखे गए लूपों की इस तुलना पर एक नज़र डालें। यदि आप पास्कल नहीं जानते हैं, तो इस भाग को छोड़ दें।

पास्कल जावा
i := 3;
While i >= 0 Do
   Begin
      WriteLn(i);
      i := i - 1;
   End;
int i = 3;
while (i >= 0)
{
   System.out.println(i);
   i--;
}
i := 0;
While i < 3 Do
   Begin
      WriteLn(i);
      i := i + 1;
   End;
int i = 0;
while (i < 3)
{
   System.out.println(i);
   i++;
}
IsExit := False;
While Not isExit Do
   Begin
      ReadLn(s);
      isExit :=  (s = 'exit');
   End;
boolean isExit = false;
while (!isExit)
{
   String s = console.nextLine();
   isExit = s.equals("exit");
}
While True Do
   WriteLn('C');
while (true)
   System.out.println("C");
While True Do
   Begin
     ReadLn(s);
     If s = 'exit' Then
       Break;
   End;
while (true)
{
   String s = console.nextLine();
   if (s.equals("exit"))
     break;
}