Java में while लूप
किसी भी लूप से पहले पूर्णांक 1 को नाम k के नीचे रखें। while (k <= 3) लिखें, और ब्रेसिज़ के अंदर k छापें फिर k + 1 को फिर से k में रखें। स्क्रीन को तीन पंक्तियाँ दिखानी चाहिए: 1, फिर 2, फिर 3। शुरू while के ऊपर रहता है। परीक्षण कोष्ठक में रहता है। कदम ब्रेसिज़ में रहता है। यही अलग-अलग जगहें इस पन्ने का पाठ हैं।
शुरू बाहर, परीक्षण while में, कदम अंदर
Pulse.java नाम की एक छोटी प्रोग्राम फ़ाइल बनाएँ। पहली पंक्ति पर public class फ़ाइल के नाम से मेल खाना चाहिए: public class Pulse। इस फ़ाइल में पुरानी Beat या Dial क्लास न रखें; कंपाइलर अपेक्षा करता है कि क्लास का नाम और फ़ाइल का नाम एक हों।
main के अंदर, पहले काउंटर रखें:
int k = 1;
वह पंक्ति while के अंदर नहीं है। वह केवल k को 1 से शुरू करती है। फिर लूप:
while (k <= 3) {
System.out.println(k);
k = k + 1;
}
शब्द while छोटे अक्षरों में है। कोष्ठक के अंदर केवल परीक्षण बैठता है: k <= 3। उन कोष्ठक में न शुरू है न कदम — पहले देखी for पंक्ति के विपरीत। ब्रेसिज़ लिखने की पंक्ति और कदम दोनों रखते हैं। System.out.println(k); वर्तमान संख्या को k के आसपास उद्धरण के बिना लिखता है। फिर k = k + 1; k के नीचे एक और रखता है ताकि अगला परीक्षण अंत में गलत हो सके। कंपाइल से पहले फ़ाइल सहेजें।
प्रोग्राम जो 1 फिर 2 फिर 3 छापता है
यही वह संस्करण है जिसे आप पहले कंपाइल करते हैं।
public class Pulse {
public static void main(String[] args) {
int k = 1;
while (k <= 3) {
System.out.println(k);
k = k + 1;
}
}
}
उस फ़ोल्डर से जहाँ Pulse.java है, javac Pulse.java चलाएँ। जब कोष्ठक, ब्रेसिज़ और अर्धविराम मेल खाते हैं, javac अपनी कोई पंक्ति नहीं लिखता। फिर java Pulse चलाएँ — java Pulse.java नहीं। दूसरी कमांड से .java अंत हटा दें। ये दोनों कमांड Windows और macOS पर एक जैसी काम करती हैं; इस पन्ने को किसी सिस्टम के लिए अलग शेल वर्तनी की ज़रूरत नहीं। प्रोग्राम को तीन पंक्तियाँ छापकर रुक जाना चाहिए: 1, फिर 2, फिर 3। वह आपसे टाइप की प्रतीक्षा नहीं करता। अगर टर्मिनल कुंजीबोर्ड इनपुट का इंतज़ार करे, तो पुराने अभ्यास का nextLine अभी फ़ाइल में है। उस कॉल को मिटाएँ और ऊपर वाला int तथा while रखें। गलत स्क्रीन पंक्ति के लिए नई JDK स्थापना की ज़रूरत नहीं।
एक पूरा चलान क्रम से पढ़ें। k while से पहले 1 से शुरू होता है। परीक्षण k <= 3 सही है, इसलिए बॉडी चलती है: println 1 लिखता है, फिर कदम 2 रखता है। परीक्षण अभी भी सही है: 2 लिखता है, 3 रखता है। परीक्षण अभी भी सही है: 3 लिखता है, 4 रखता है। अब k <= 3 गलत है, इसलिए लूप खत्म होता है। शुरू एक बार, लूप के ऊपर, चला। परीक्षण हर पास से पहले। कदम ब्रेसिज़ के अंदर हर छाप के बाद। ये तीन काम for जैसे ही विचार हैं, लेकिन एक ही हेडर पंक्ति में नहीं ठुँसे। अगर आप k = k + 1; छोड़ दें और k हमेशा 1 रहे, तो परीक्षण सही रहता है और वही पंक्ति बिना रुके छाप सकती है — इसीलिए इस पन्ने पर कदम बॉडी में रहता है।
परीक्षण चौड़ा करें
केवल परीक्षण बदलें ताकि लूप एक कदम और आगे जाए:
int k = 1;
while (k <= 4) {
System.out.println(k);
k = k + 1;
}
शुरू और कदम वैसे ही छोड़ दें। अब स्क्रीन को चार पंक्तियाँ दिखानी चाहिए: 1, 2, 3 और 4।
public class Pulse {
public static void main(String[] args) {
int k = 1;
while (k <= 4) {
System.out.println(k);
k = k + 1;
}
}
}
फिर से कंपाइल और चलाएँ: javac Pulse.java, फिर java Pulse। आपको चार पंक्तियाँ दिखनी चाहिए। आपने println या कदम नहीं बदला — केवल while (…) के अंदर परीक्षण बदला। चार पंक्तियाँ देखने के बाद, पहली डेमो पर लौटने के लिए k <= 3 वापस रख सकते हैं। दोनों संस्करण सही Java हैं। वे अलग रुकने के बिंदु के साथ वही while आकार सिखाते हैं।
चार-पंक्ति चलान एक बार और पढ़ें। k 1 से शुरू होता है। हर सही परीक्षण वर्तमान k छापता है फिर 1 जोड़ता है। जब k 5 हो जाता है, परीक्षण असफल होता है और लूप रुकता है। अंक 5 इस डेमो में स्क्रीन पर नहीं आता, क्योंकि बॉडी केवल तब चलती है जब परीक्षण अभी भी सही हो।
📊 k और पहली डेमो स्क्रीन
| k println से पहले | स्क्रीन पंक्ति |
|---|---|
| 1 | 1 |
| 2 | 2 |
| 3 | 3 |
तालिका को पहली डेमो के बाद जाँच के रूप में इस्तेमाल करें, चलाने की जगह नहीं। उस डेमो में हर println से पहले, k वही संख्या रखता है जो उस पंक्ति पर दिखेगी। तीसरी छाप के बाद, कदम 4 रखता है और परीक्षण असफल होता है। अगर बिना कदम वाले संस्करण पर स्क्रीन कभी न रुके, तो k = k + 1; को फिर ब्रेसिज़ के अंदर रखें — Java फिर से स्थापित न करें।
नियम जो while को साफ़ रखते हैं
परीक्षण के आसपास कोष्ठक ज़रूरी हैं। बिना कोष्ठक while k <= 3 { … } लिखने पर javac असफल होता है। इस पन्ने पर बॉडी हमेशा ब्रेसिज़ में रहती है, क्योंकि हर पास की दो पंक्तियाँ हैं: println और कदम। अगर आप कदम बंद ब्रेस के बाद छोड़ दें, तो वह लूप खत्म होने के बाद एक बार चलता है — और लूप के अंदर k कभी नहीं बदलता, इसलिए लूप हमेशा चल सकता है। दोनों डेमो में कदम ब्रेसिज़ के अंदर रखें।
while न for है न switch। for शुरू, परीक्षण और कदम को एक हेडर पंक्ति में बाँधता है। while अपने हेडर में केवल परीक्षण रखता है और शुरू तथा कदम आपसे खुद रखने को कहता है। switch एक बार case लेबल में से चुनता है। उसी main में Beat वाला for लूप या Dial वाला switch न छोड़ें और हैरान न हों कि स्क्रीन बचा for-शैली हेडर या शब्द mid दिखाती है। इस सत्र के main में केवल int और while होने चाहिए।
एक आम गलती स्वयं सिंटैक्स छापना है: System.out.println("while (k <= 3)");। वह while हेडर के अक्षर लिखता है। वह दोहराता नहीं। दूसरी गलती k के आसपास उद्धरण लगाना है: System.out.println("k"); हर पास पर अक्षर k लिखता है। जब आप स्क्रीन पर काउंटर चाहते हैं, तो println(k) बिना उद्धरण रखें। अगर while पहली बार पहुँचने पर परीक्षण पहले से गलत हो — उदाहरण के लिए k 5 से शुरू हो और परीक्षण कहे k <= 3 — बॉडी कभी नहीं चलती और स्क्रीन खाली रहती है। वह भी सही while है; इस पाठ की डेमो ऐसा परीक्षण रखती हैं जो कम से कम एक बार सही हो ताकि आप छापी पंक्तियाँ देख सकें।
अब आप क्या कर सकते हैं
आप while के ऊपर काउंटर शुरू कर सकते हैं, परीक्षण while (…) में रख सकते हैं, और println तथा कदम दोनों ब्रेसिज़ के अंदर रख सकते हैं। परीक्षण बदलने से पंक्तियों की संख्या बदलती है। अगला पन्ना break और continue है, जहाँ आप लूप जल्दी छोड़ते हैं या एक पास छोड़ देते हैं बिना पूरे लूप को खत्म किए।
🧠 अपने ज्ञान की परीक्षा करें
अपने ज्ञान की परीक्षा करें
इस इंटरैक्टिव क्विज़ के साथ अपनी चुनौती लें और देखें कि आप विषय को कितनी अच्छी तरह समझते हैं
📝 निर्देश
- हर प्रश्न को ध्यान से पढ़ें
- हर प्रश्न के लिए सबसे अच्छा उत्तर चुनें
- आप जितनी बार चाहें क्विज़ दोबारा दे सकते हैं
- आपकी प्रगति शीर्ष पर दिखाई जाएगी