NoteTube

Kotlin Basics || Brute Force || While Loop || Humble Coders
10:34

Kotlin Basics || Brute Force || While Loop || Humble Coders

Humble Coders

4 chapters6 takeaways10 key terms5 questions

Overview

यह वीडियो Kotlin में व्हाइल लूप (while loop) का उपयोग करके ब्रूट फोर्स (brute force) पासवर्ड क्रैकिंग सिमुलेशन बनाने का तरीका सिखाता है। यह सिंटेक्स, कैरिज रिटर्न (carriage return) जैसे कॉन्सेप्ट्स और विज़ुअल इफेक्ट्स के लिए डिले (delay) के उपयोग को कवर करता है। वीडियो का लक्ष्य कंट्रोल फ्लो स्टेटमेंट्स और व्यावहारिक कोडिंग के माध्यम से सीखने को मजेदार बनाना है।

How was this?

Save this permanently with flashcards, quizzes, and AI chat

Chapters

  • व्हाइल लूप तब तक चलता है जब तक दी गई कंडीशन फॉल्स (false) नहीं हो जाती।
  • फॉर लूप (for loop) के विपरीत, व्हाइल लूप में वेरिएबल को इंक्रीमेंट (increment) या डिक्रिमेंट (decrement) करना अनिवार्य नहीं है, जिससे इनफाइनाइट लूप (infinite loop) का खतरा होता है।
  • हम एक 4-डिजिट पासवर्ड क्रैकिंग सिमुलेशन बनाएंगे जो ब्रूट फोर्स मेथड का उपयोग करेगा।
  • यह सिमुलेशन वास्तविक दुनिया में 4-डिजिट पासवर्ड क्रैक होने की प्रक्रिया को दर्शाता है।
यह चैप्टर व्हाइल लूप के बेसिक सिंटेक्स और उसके व्यावहारिक उपयोग को समझने में मदद करता है, जो कि किसी भी प्रोग्रामिंग में एक फंडामेंटल कॉन्सेप्ट है।
एक 4-डिजिट पासवर्ड क्रैकिंग सिमुलेशन बनाना जिसमें 0000 से 9999 तक के सभी कॉम्बिनेशन ट्राई किए जाते हैं।
  • ब्रूट फोर्स एक मेथड है जिसमें पासवर्ड क्रैक करने के लिए सभी संभावित कॉम्बिनेशन को एक-एक करके ट्राई किया जाता है।
  • कैरिज रिटर्न (\r) एक स्पेशल कैरेक्टर है जो कर्सर को लाइन की शुरुआत में ले जाता है, जिससे टेक्स्ट को उसी लाइन पर ओवरराइट (overwrite) किया जा सकता है।
  • कैरिज रिटर्न का उपयोग 'लोडिंग...' जैसे टेक्स्ट को 'डन' से बदलने जैसे विज़ुअल इफेक्ट्स बनाने के लिए किया जाता है, बिना नई लाइन पर जाए।
  • सिमुलेशन में, कैरिज रिटर्न का उपयोग 'Trying: [guess]' को हर बार ओवरराइट करने के लिए किया जाता है, जिससे हैकिंग का विज़ुअल इफेक्ट मिलता है।
यह चैप्टर सिखाता है कि कैसे कैरिज रिटर्न जैसे स्पेशल कैरेक्टर्स का उपयोग करके यूजर इंटरफ़ेस को अधिक डायनामिक और आकर्षक बनाया जा सकता है, जो कि ब्रूट फोर्स के विज़ुअल अपील के लिए महत्वपूर्ण है।
टर्मिनल पर 'Trying: 0001' प्रिंट होने के बाद, अगली बार 'Trying: 0002' उसी लाइन पर ओवरराइट हो जाता है, न कि नई लाइन पर।
  • कंप्यूटर की स्पीड बहुत तेज होने के कारण, विज़ुअल इफेक्ट्स को देखने के लिए डिले (delay) का उपयोग किया जाता है।
  • 1 मिलीसेकंड (millisecond) का डिले विज़ुअल इफेक्ट्स को देखने के लिए पर्याप्त है, क्योंकि यह न्यूनतम संभव डिले है।
  • डिले फंक्शन का उपयोग करने के लिए फंक्शन को सस्पेंड (suspend) बनाना पड़ता है।
  • जब पासवर्ड मिल जाता है या सभी कॉम्बिनेशन ट्राई हो जाते हैं, तो लूप को रोकने के लिए ब्रेक (break) स्टेटमेंट का उपयोग किया जाता है।
यह चैप्टर बताता है कि कैसे डिले और सस्पेंड जैसे कॉन्सेप्ट्स प्रोग्राम के एग्जीक्यूशन को कंट्रोल करने और यूजर को विज़ुअल फीडबैक देने में मदद करते हैं, जबकि ब्रेक स्टेटमेंट लूप को सही समय पर समाप्त करना सुनिश्चित करता है।
पासवर्ड क्रैक होने के विज़ुअल इफेक्ट को देखने के लिए हर गेस के बाद 1 मिलीसेकंड का पॉज (pause) डालना।
  • पासवर्ड क्रैक होने पर 'Password Cracked!' मैसेज प्रिंट होता है।
  • लूप से बाहर निकलने के लिए ब्रेक स्टेटमेंट का उपयोग किया जाता है, चाहे कंडीशन पूरी हो या पासवर्ड मिल जाए।
  • गेस वेरिएबल को हर इटरेशन (iteration) के बाद इंक्रीमेंट ऑपरेटर (++) का उपयोग करके बढ़ाया जाता है।
  • वीडियो कंट्रोल फ्लो स्टेटमेंट्स (if, when, loops) और कुछ एडवांस्ड कॉन्सेप्ट्स जैसे डिले, सस्पेंड और कैरिज रिटर्न को कवर करता है।
यह चैप्टर लूप के एग्जिट कंडीशन और वेरिएबल अपडेट के महत्व को समझाता है, जो किसी भी प्रोग्राम को सही ढंग से समाप्त करने और आगे बढ़ने के लिए आवश्यक हैं।
लूप के अंत में `guess++` का उपयोग करके अगले नंबर को ट्राई करने के लिए गेस वेरिएबल को बढ़ाना।

Key takeaways

  1. 1व्हाइल लूप का उपयोग तब करें जब आपको एग्जीक्यूशन की संख्या पहले से पता न हो, लेकिन एक कंडीशन के आधार पर लूप को रोकना हो।
  2. 2ब्रूट फोर्स एक सिस्टमैटिक तरीका है जिसमें सभी संभावनाओं को आज़माया जाता है, जो पासवर्ड क्रैकिंग जैसे कार्यों में उपयोगी है।
  3. 3कैरिज रिटर्न (\r) का उपयोग करके आप टर्मिनल या कंसोल पर टेक्स्ट को ओवरराइट कर सकते हैं, जिससे डायनामिक आउटपुट बनता है।
  4. 4विज़ुअल इफेक्ट्स को स्मूथ बनाने के लिए डिले फंक्शन का उपयोग करें, लेकिन ध्यान रखें कि यह सस्पेंड फंक्शन की आवश्यकता पैदा करता है।
  5. 5किसी भी लूप को समय से पहले रोकने के लिए ब्रेक स्टेटमेंट का उपयोग करना महत्वपूर्ण है, ताकि अनपेक्षित व्यवहार से बचा जा सके।
  6. 6प्रोग्रामिंग में लॉजिक के साथ-साथ विज़ुअल अपील और यूजर एक्सपीरियंस को बेहतर बनाने के तरीके सीखना भी ज़रूरी है।

Key terms

While LoopBrute ForcePassword Cracking SimulationCarriage Return (\r)OverwriteDelay FunctionSuspend FunctionIncrement Operator (++ )Break StatementControl Flow Statements

Test your understanding

  1. 1व्हाइल लूप और फॉर लूप के बीच मुख्य अंतर क्या हैं, खासकर जब लूप को इनफाइनाइट होने से रोकना हो?
  2. 2ब्रूट फोर्स अटैक क्या है और इसे सिमुलेट करने के लिए व्हाइल लूप का उपयोग कैसे किया जा सकता है?
  3. 3कैरिज रिटर्न कैरेक्टर (\r) का क्या उद्देश्य है और यह टर्मिनल आउटपुट को कैसे प्रभावित करता है?
  4. 4प्रोग्राम को सस्पेंड करने की आवश्यकता क्यों पड़ती है जब हम डिले फंक्शन का उपयोग करते हैं?
  5. 5पासवर्ड क्रैकिंग सिमुलेशन में ब्रेक स्टेटमेंट का क्या महत्व है?

Turn any lecture into study material

Paste a YouTube URL, PDF, or article. Get flashcards, quizzes, summaries, and AI chat — in seconds.

No credit card required