Hi everyone, welcome to Tupna College and today we are finally going to start with our new DSA series. In this series, we are going to read all our data structures and algorithms concepts in a very in-depth but simple way. Why did we need this series?
To resolve three problems, we decided to make this series. The first problem is that many times if we go to a DSA series on YouTube, then things are finished on pseudo code. और सिर्फ pseudo code करना एक student को एक false sense of security देता है, चीज़ें incomplete रह जाती हैं, तो हम वैसी चीज़ नहीं करेंगे, हम बिलकुल completely जाकर चीज़ों को पढ़ने वाले हैं, ताकि दिमाग में सारे के सारे concepts की एक complete clarity बैठें, second reason series को start करने का है regarding the objective कुछ रियसे series में हमने देखा होगा कि उनका primary objective होता है कि बस हमें videos बनानी है ताकि किसी ना किसी brand को promote कर दिया जाए लेकिन this series is not sponsored is not promoted by anyone यहाँ पे सिर्फ एक ही objective है कि quality DSA content students तक पहुँचना चाहिए, and third problem that we are trying to resolve is of practice questions, कई जगह आपको दिखेगा कुछ series में बहुत lack of practice questions होता है, कई जगह आपको दिखेगा कि जरूरत से जादा videos जाया, जरूरत से जादा questions हमें करा दिये, जिससे सिर्फ student का time waste होता है, चीजों को आप मेरे साथ बहुत ही सिंपल तरीके से समझने वाले हैं, आज हो सकता है चीजें हमें मुश्किल लगे, क्योंकि हम first time DSA को पढ़ना start कर रहे हैं, लेकिन I can assure you कि इस series के complete होने के बाद हमें काफी confident महसूस होगा, हमें महसूस होगा कि हाँ DSA के अंदर हमने चीज जब भी generally हमें software engineering field के अंदर जाना है, जब भी हमें tech के अंदर काम करना है किसी अच्छे role पर, तो majority tech companies हमसे interviews के अंदर या coding test के अंदर DSA के सवाल पूछती हैं, और इन सवालों को solve करने के लिए हमें data structures and algorithms के concepts आने चाहिए, तो इसलिए हम DSA को बढ़ते हैं, अभी इतनी सारी companies, DSA generally candidates से इसलिए पूछते हैं क्योंकि जितने अच्छे आपके data structures and algorithms के concept होंगे उतने अच्छे आप problem solver होंगे as a software engineer.
क्योंकि engineers का tech companies में जाने के बाद एक ही primary काम होता है, वो होता है to solve problems, तो companies के अंदर जाने के बाद जितने अच्छे level पर हम problems को solve करेंगे, जितने efficiently, optimal तरीके से उन problems को solve करेंगे, companies के अंदर जो software engineers को high salary दी जाती है, वो उन ही problems को solve करने की हमें उसके लिए decide करना है कि इस problem के अंदर कौन-कौन से हमें data structures use करने है, कौन-कौन से हमें algorithms use करने है, और optimal तरीके से हमें उस problem को solve करना है, जब हमें data structures के overview की बात करें, तो ये मोटा-मोटी वो data structures हैं, जिनको हम अपनी series के अंदर complete करेंगे भी और different data structures हैं and algorithms तो मैंने लिखी नहीं है अब यह जो chart है यह मैं देखने में first time as a beginner देखने में हो सकता है बहुत complex लगे पर ये चार्ट आपको अभी समझ में नहीं आएगा, जैसे हम अपनी सीरीज को पूरा complete कर लेंगे, उसके बाद आपको ये चार्ट बहुत अच्छे से समझ में आ जाएगा, क्योंकि ये सारे के सारे topics को हम complete कर चुके होंगे, इसके अलावा और additional data structures भी complete कर चुके होंगे plus कई सारी जो algorithms होती हैं जैसे dynamic programming होगी, जैसे greedy algorithm होगी, जैसे two pointer approach होगी and इसके अलावा भी बहुत सारी different approaches होंगी, algorithms होंगे जिनको हम इस पूरी की पूरी series के अंदर पढ़ने वाले हैं पर ये सारी चीजे मैं आपको day 1 पे नहीं बताना चाहती, जिससे हम overwhelm हो जाए, हमें बहुत ही simple, बिल्कुल baby steps के साथ हम start करेंगे, और धीरे advanced problems की तरफ हम बढ़ना शुरू करेंगे, तो जितने strong हमारे शुरू के fundamentals होंगे, उतना easy हमारे लिए advanced topics को बढ़ना हो जा� किसी ना किसी programming language पर अच्छी पकड़ होनी चाहिए, उसके बाद हम DSA concepts को जाकर सीखते हैं, क्योंकि तब ही हम उनका code लिख पाएंगे, तब ही हम उनको implement कर पाएंगे, तो इसी लिए इस series के अंदर हम सब कि हमें notes कब बनाने चाहिए और किस तरीके से बनाने चाहिए तो मैं आपको शुरू में ही वो चीज बता देती हूँ कि शुरू के जो chapters हैं ये chapters इतने easy हैं यानि flowchart and pseudocode हो गया, इसके बाद हम variables, data types, operators पढ़ेंगे, conditional statements पढ़ेंगे, functions तक हमें कोई notes बनाने की ज़रूरत नहीं है, सिर्फ आपको एक rough notebook लेकर बैटना है, और मेरे साथ paper pen पर आप concepts को practice कर सकते हैं, लेकिन as such हमें fair notes बनाने की इसलिए ज़रूरत नहीं है, क्योंकि ये जो इतने concepts हैं, इनके बाद वाले lectures के अंदर, यानि starting from binary number system, starting from pointers तो आपको शुरू में बिल्कुल गबराने की ज़रूरत नहीं है कि जब हम if-else शुरू कर रहे हैं, मैंने क्या लिख लिया, जब हम flow chart देख रहे हैं, यह तो diagram बहुत मुश्किल सा लग रहा है, शुरू में चीज़ें मुश्किल लगेंगी, practice कैसे करेंगे, class में जो चीज़ें कराई जा रही हैं, उनको अच्छे से practice करना है, जो homework problems दिये जा रहे हैं, उन्हें अच्छे से practice करना है, and इसके साथ में आगे के जो हम chapters करेंगे, उसके थूँ तो हमारी practice होई जाएगी, तो यह एक important point है जिसको बता दिया गया है ताकि किसी भी student का कोई भी extra time waste ना हो अब हमने DSA की बात की तो हमें पता है कि हमें बहुत सारी problems को solve करना है तो सबसे पहले एक logic build करते हैं overall कि as a programmer जब भी हम किसी problem को देखते हैं तो उसको solve करनी की पीछे हमारा क्या process रहता है? उसके लिए एक बहुत simple सा example लेंगे, let's suppose हमें ये problem दी गई है और इस problem को मुझे solve करना है, we have to find the sum of two numbers A and B, ये हमारी problem है, अब इस problem को जैसे ही हम देखेंगे, हमने life में बहुत सारी problem solve कर रखे हैं, तो ये तो बहुत ही चोटी सी problem है, हमें पता है यानि सबसे पहला जो step होता है towards solving a problem, that is basically to understand what the problem is saying, वो तो हमें समझ में दूसरा step होता है यह देखना कि ठीक है sum तो निकालना है पर कौन से numbers का निकालना है, basically हमारे पास क्या given value है और इनी given values को हम अपना input कह देते हैं, कि हमें input की clarity होनी चाहिए, कि हमें क्या दिया जा रहा है, हमें A और B दो numbers दिये जा रहे हैं, तो यह दोनों चीज़ें जब हमे और sum में हम लिख देंगे a plus b तो हमने क्या किया? दो numbers का sum निकाल लिया तो overall ये हमारा process होता है किसी भी problem को solve करने का real life के अंदर भी और programming के अंदर भी बस programming में इसके बाद एक और step आ जाता है which is to convert this solution into a code ये solution तो हमने paper pen पे बना लिया लेकिन इसको finally मुझे एक C++, या एक Python के code के अंदर convert करना है, अब यह जो code के अंदर convert करने वाला part है, इसको हम बाद में सीखेंगे, आज इस lecture के अंदर जो हम focus करने वाले हैं, वो हम इन steps के ऊपर focus करने वाले हैं, यानि programmer का काम होता है, पहले paper pen के ऊपर solution निकालना, अगर paper pen के ऊपर आपने किसी problem को solve कर लिया, तो उसका code लिखना बहुत ही असान होता तो आज के lecture के अंदर हम introduction to programming रख रहे होंगे, logic building रख रहे होंगे, flowcharts and pseudocodes के बारे में बात करेंगे, क्यों इनको हम use करते हैं, किस तरीके से flowchart and pseudocode को बनाया जाता है या लिखा जाता है, अब आज का ये जो lecture है ये उन students के लिए optional है जिनको already किसी न किसी एक programming language के अंदर conditional statements लिखनी आती हैं, loops लिखनी आती हैं, functions लिखनी आती हैं क्योंकि अगर आपको ये concepts already आते हैं तो आपको basics of logic building आता है तो तब हम इस lecture को skip कर सकते हैं लेकिन अगर हम first time अपनी programming journey की शुरुवात कर रहे हैं, तो आज का lecture हमारे लिए important इसलिए हो सकता है, क्योंकि यह हमें basic logic building के अंदर help करेगा, plus एक और disclaimer मैं आपको पहले ही दे दीती हूँ, कि flow charts generally interviews के अंदर नहीं पूछे जाते, इनको सिर्फ हम logic building के लिए पढ़ रहे हैं pseudo code important होता है plus इससे भी ज़ादा important होता है interviews के अंदर direct code को लिख पाना तो उन दोनों के उपर हमारा सबसे ज़ादा focus रहेगा यहाँ पर lecture के अंदर वो point आ गया है अपने paper pen के साथ तयार रहना है, और अब हमें बनाने हैं बहुत सारे flow charts and pseudo codes, तो सबसे पहले बात करते हैं कि एक flow chart क्या होता है, flow chart इस तरीके का एक diagram होता है, अब हमने problem के लिए दिमाग में सोच के कुछ ना कुछ solution तो बना लिया ह Sum of two numbers के लिए हमें पता है हमने पहले क्या किया होगा, हमने पहले problem का solution निकालना शुरू किया होगा, तो जब भी हम कोई भी solution निक उसके बाद हमने input किया होगा a और b, यानि मेरे जो दो input हैं, कौन से दो numbers थे हमारे input, a और b दो numbers थे, उनको मुझे input करना था, फिर इन से मुझे sum निकालना था, तो मेरा sum हो जाता है, sum is equal to a plus b, फिर हम चाहें तो इस sum को print करवा सकते हैं, या तो ये मेरा logical solution था, अब वैसे तो जब हम दो numbers का sum निकालते हैं, हमारे दिमाग में सिर्फ इतना ही logic आता है, ये start और end हम generally नहीं लिखते, पर क्योंकि हम computers के साथ deal करने वाले हैं, हम program के साथ deal करने वाले हैं, तो flow chart में convention होता है कि बह शुरू कर रहे हो तो start लिख दो, औ चार्ट होता है तो हमें इन सारे steps को ये क्या है?
steps हैं जिनने हमें diagram के अंदर convert करना पड़ेगा और उसके लिए हम use करेंगे कुछ components का कुछ डबों का और वो components कैसे दिखते हैं? वो components कुछ ऐसे दिखते हैं सबसे पहला सबसे easy component होता है हमारा start या exit का component हम basically एक oval बनाते हैं और हमेशा start और exit को तो जब हम solution का start या end दिखाना चाते हैं तो इसे एक बार create भी कर लेते हैं, यह हमारे solution का start था, तो मैंने यहाँ पर एक oval बना दिया, यह हमारे solution का exit था, तो मैंने यहाँ पर भी एक oval बना दिया, तो यह दो shapes हमने बना दी, next हमारा component होता है input और output का, जो भी हम programs लिखे तो जब भी हमें input दिखाना होता है, या जब भी logic के अंदर हमें output दिखाना होता है, उसके लिए हम ये parallelogram वाली shape यूज़ करते हैं, तो जब भी हम input करना चाहते हैं, जब भी हम कुछ output या नहीं print करवाना चाहते हैं, तो उसे हम ऐसे अब जितने भी process होते हैं, process यानि कोई भी आपने calculation करी, कोई भी आपने काम किया, जो input output की category के अंदर नहीं आता, कोई आपने variable लिखा, तो इस तरीके की चीज़ें हम दिखाते हैं एक rectangle की form में, जैसे for example मुझे दिखाना है कि name के अंदर मुझे Tony Stark store कराना है, अब यहा� कुछ इस तरीके से, तो ये सारे के सारी चीजों को हमने किसी न किसी component या किसी न किसी block के अंदर डाल दिया, अब चार्ट के अंदर special चीज एक और ये होती कि पूरा चार्ट connected होता है, और connect करने के लिए use करते हैं हम arrows का, basically हमें flow दिखाना है, ये important word है, हमें अ तो हमारी एक arrow होगी, जो start से यहां तक जाएगी, फिर input के बाद हमें sum calculate करना है, फिर sum के बाद मुझे print करना है, फिर print के बाद मुझे exit कर देना है, तो यह मैंने arrows दिखा दिये, तो यह पूरा flow chart हमारा complete हो चुका है यहाँ पर, अब flow chart के अंदर इन components के साथ में एक और additional component होता है जिसको हम decision component कहते हैं इसको भी हम अभी use करेंगे इसमें basically हम एक diamond की shape बनाते हैं और decision component का काम होता है किसी न किसी condition को check करना condition कहने का मतलब है, अगर हमें check करना है, कोई number एक दूसरे number से बड़ा है, क्या A greater than B है, या फिर ऐसी किसी चीज को check करना, जिसका answer सिर्फ yes या no हो सकता है, जैसे for example, मेरे पास कोई sum है, मुझे check करना है, क्या sum 0 से बड़ा है तो greater than equal to 0 लिख दिया मैंने अब या तो ये मुझे yes दे सकता है या ये मुझे no दे सकता है तो depending upon ये जो condition है या no देती है उसके बाद क्या काम होना चाहिए, तो इस तरीके से हम दो arrows निकाल सकते हैं, from this diamond shape, और इसको हम अपना decision block कहते हैं, decision block को अभी और detail में हम कुछ सवालों के अंदर करने वाले हैं, तो और clarity आ जाएगी, पर ये जो simple components थे, इनको I hope हमने understand कर लिया हो और ये पूरा का पूरा जो हमारा flow chart है इसको हमने build कर लिया है कि how a flow chart is a diagram of a solution अब next बात करते हैं कि एक pseudo code क्या होता है अब pseudo code की अगर बात करें तो pseudo code ��ा मतलब होता है general logic of a solution, यह जो pseudo code होता है इसको लाइक लांग्विज के अंदर लिखते हैं और इस pseudo code को कोई भी समझ सकता है जेनरली companies के अंदर अगर हम जाते हैं ज़रूरी नहीं है सारे की सारे developers एकी language पर काम कर रहे हो हो सकता है किसी को C++ आती हो, हो सकता है किसी को Java आती हो, हो सकता है किसी को Python आती है, generally किसी problem का solution अगर हम C++ में लिख देंगे तो वो Python developer को तो समझ आएगा ही नहीं, तो logic and code के जो बीच की चीज होती है, उसे हम pseudo code कहते हैं, और pseudo code सारे developers को समझ में आ इसलिए इसको हम solution का general logic कहते हैं, और इसे हम English like language के अंदर सीखते हैं, तो यह हमारा flow chart था, इसी flow chart से हम directly pseudo code बना सकते हैं, तो शुरुआत करते हैं कि कैसे हम अपना pseudo code लिख सकते हैं, pseudo codes को हम English के अंदर steps की form में लिखते हैं, तो सबसे पहले हम अपना first step लि step हो जाएगा input a and b, उसके बाद next step हो जाएगा sum निकाल लो, which is going to be a plus b, तो next step में हम लिखेंगे sum is equal to a plus b, third step हो जाएगा कि you sum को print करवा दो तो यहाँ पर हम print करवा देंगे अपने sum को, अच्छा यहाँ पर ये जो मैंने s लिखा है ये सारे के सारे हमारे small s हैं in case anybody had confusion तो उसको हम वही same नाम follow करेंगे and fourth step होता है to exit, exit हम रखेंगे, थोड़ा सा convention होता है, start हम ignore कर देंगे, बाकि अगर आप ये exit भी यहां से अटा देते हैं, तो भी हमारे code के, pseudo code के ऊपर कोई फरक नहीं पड़ेगा, क्योंकि pseudo code के as such कोई fixed rules नहीं होते, हमें सिर्फ इसी flow chart के logic को pseudo code के अ यहाँ पे कुछ students के दिमाग में सवाल आ रहा होगा कि ma'am जब हमारे पास problem आएगी फिर interviews के अंदर, तो क्या हम problem को समझ के पहले उसका flow chart बनाएंगे, फिर उसका pseudo code लिखेंगे, फिर उसका code लिखेंगे, तो उसका जवाब है बिल्कुल भी नहीं, flow chart को शाय और फिर हम चीजों को code के अंदर convert कर जाएं, तो सारी चीज़ें हमें करने की ज़रूरत नहीं है, हम अभी सिर्फ understanding बनाने की कुछश कर रहे हैं, तो ये तो हमने यहाँ पर ऐसे pseudo code लिख दिया, पर क्योंकि pseudo code के कोई fixed तरीके नहीं होते, तो कोई अगर student है, जो पहले मान लो input A करना चाह रहा है, फिर वो input B करना चाह रहा है, और अगर कोई और variable है, तो भी उसमें कोई problem नहीं है, क्योंकि logic overall same रहता है, उसका flow chart भी बना लिया, उसका pseudo code भी लिख दिया, अब इन दोनों चीजों की practice के लिए हम बहुत सारे practice questions को solve करने वाले हैं, जिसमें से first question है हमारा area of a square का, हमारे पास problem दी गई है कि हमें एक square का area निकालना है, तो सबसे पहले problem तो clear है, अगर हम इसकी एक side को कि square का जो area होता है, it is equal to a square, यानि a multiplied by a, यह formula हमें already आता होगा, तो problem को तो हम समझ गए हैं, दूसरा देखेंगे, input में हमें क्या दिया जाएगा, तो जब area of a square के लिए हमें पता है, हमें side चाहिए, तो input के अंदर हमें side लेनी पड़ेगी, हमें echo input कराना पड़ेगा, तो हम problem को कैसे solve करेंगे, सबसे पहले तो हम start कर देंगे, तो start के लिए हमें पता है कि हमारा ये वाला component हम use करते हैं, उसके बाद area निकालने के लिए हमें input करनी पड़ेगी side, तो side को हम a भी कह सकते हैं, side को हम side भी कह सकते हैं, तो simplicity के लिए इसको a बोल देते हैं, a के लिए हम अपना parallelogram, input वाला component यूज़ करेंगे, एक बार हमारे पास a आ गया, उससे हम area निकाल सकते हैं, area क्या होता है area is equal to a square a square यानि a multiplied by a तो इसे हम क्योंकि calculation कर रहे हैं and फिर finally हम इस area को print करवा सकते हैं तो print करवा देंगे अपने इस area को and इसे अपने इस वाले component के अंदर हम store कर लेंगे, बहुत ही असान था, and finally हम कर जाएंगे exit, exit करने के लिए दुबारा से हमारे पास हमारा overall वाला block आ जाएगा, तो ये हमारा overall flow chart है, जो इस problem के लिए बनेगा, अच्छा ये problem अगर आपको लग रहा था कि आ� तो वहाँ पर lecture को pause करना है, और खुद से उसका solution लिख देना है, और फिर directly जाकर आप मेरे solution से ही अपना solution match कर सकते हैं अब इसी solution को अगर हम convert करें, यानि ये तो हमने flow chart बना दिया, इसको अगर हम convert करें to the pseudo code, तो वो क्या होगा, अच्छे pseudo code के बारे में एक और interesting चीज, इसके शब्द भी अगर हम देखें, pseudo का मतलब होता है नकली code, तो pseudo code जब हम English like code लिख रहे हैं, वो basically नकल second step हम area निकाल लेंगे, तो the area is going to be A into A, third step हम print कर देंगे अपने area को, तो print कर दिया मैंने अपने area को, fourth step में हम exit कर जाएंगे, तो यह हमारा pseudo code तैयार हो गया, और यह ऐसा code है जो किसी को भी English आती होगी, कि overall जो solution होना चाहिए वो ऐसा होना चाहिए और जिसको जब हम C++ code के अंदर भी convert करेंगे तो इसका C++ code भी असान ही होगा तो इस code को भी बाद में हम देख रहे होंगे, तो इस तरीके से हम area of square calculate कर सकते हैं, यानि उसका flow chart and pseudo code, उस problem का solution हम present कर सकते हैं, next problem को discuss करते हैं, next problem है minimum of two numbers की problem, ये special होने वाली है क्योंकि इसके अंदर हम अपने decision block को use करेंगे, अब minimum of two numbers ये हमारी problem है, हमें दो input clear है solution देखते हैं मान लो अगर हमें दो numbers यह जाते है 4 और 5 चार और 5 दे देते हैं तो हमें कैसे पता चलता है दोनों में से minimum यानि कम कौन है हम basically दोनों को compare कर लेते हैं हम यातो ये check कर सकते हैं, क्या 4 less than 5 है, या फिर हम ये भी check कर सकते हैं, कि 4 क्या greater than 5 है, मतलब अगर 4 less than 5 है, इसने मुझे yes दे दिया, और अगर 4 greater than 5 है, इसने मुझे no दे दिया, तो छोटे वाला number कौन हो जाएगा, छोटे वाला number फिर से 4 हो जाएगा, तो पहले तो मुझे decide करना है, मुझे less than use करना है, या greater than use करना है, दोनों में से मैं कुछ भी use कर सकती हूँ, हम क्या करते हैं less than वाला logic use कर लेते हैं अब 4 और 5 में less than से yes या no करके मैं निकाल सकती हूँ कि 4 less than 5 है क्या या तो ये yes होगा या ये no होगा अगर 4 less than 5 है तो उस case में छोटा number कौन होगा 4 और अगर 4 less than 5 नहीं है तो उस case में छोटा number कौन होगा 5 अब बस इस 4 और 5 को मैं replace कर दूँ अगर A और B से तो मेरे पास मेरा solution आ जाएगा कि कोई भी दो number A और B हो 4 और 5 नहीं 1, 2 है, 4, 10 है 10 और 5 हैं कुछ भी numbers है किसी number को check कर लो अगर वो छोटा है yes तो वो छोटा number है ये छोटा number है अगर छोटा नहीं है no तो B छोटा number है, बहुत straightforward solution है, तो इसका flow chart कैसा दिखेगा, सबसे पहले तो हम start ही कर देंगे, start करने के बाद, मुझे क्या चाहिए होंगे, मुझे ये दोनो numbers चाहिए होंगे, comparison से पहले number चाहिए, अब compare करने के लिए जो हम block use करते हैं, कभी भी अगर हम yes, no वाली चीज पूछनी होती है, तो उसके लिए जो हम block use करते हैं, this is called a decision block or a diamond block, इसके हम diamond जैसी कोई भी shape है जिसको बना सकते हैं, और जो भी चीज हमें check करनी है, जो भी condition, इसको हम कहते ह या फिर इसका answer no हो सकता है, 2 ही हो सकते हैं, और in fact और simplicity के लिए क्या करते हैं, यह yes वाली जो arrow है न, यह यहां से निकाल देते हैं, या तो इसका answer yes हो सकता है, या फिर इसका answer no हो सकता है, 2 ही answers हो सकते हैं, अगर a less than b ह तो उस case में हम print करवाएंगे A को, नहीं तो हम print करवाएंगे B को, तो यह हमारा एक output block हो गया, यह हमारा दूसरा output block हो गया, तो इस तरीके से हमने यहाँ पर एक decision लिया कि answer yes में है या no में है, उसके basis पर output decide होगा, अब एक and यही same exit हम जाएं तो इसमें भी use कर सकते हैं कि यह print हो गया फिर exit कर दो या ये print हो गया तो फिर exit कर दो एक चीज notice करेंगे आप इस solution में कभी भी दो नंबर ए और बी के लिए दोनों numbers कभी print नहीं हो सकते, क्यों print नहीं हो सकते, क्योंकि यहाँ पर इस block पर decide हो रहा है कि हमें left direction में जाना है या हमें right direction में जाना है, तो यहाँ पर दोनों directions में जाना possible नहीं है, मतलब दोनों में से जो भी minimum होगा, सिर्फ वही आकर print हो रहा हो� 10 less than 5 नहीं है, तो हम no वाली arrow की तरफ जाएंगे, और हम print करवा देंगे b को, b को मतलब 5 को, तो हमारा answer हो जाएगा 5, तो दोनो numbers में से minimum कौन है, minimum है हमारा 5, तो बहुत straightforward solution था, अब इसका हम pseudo code लिखते हैं, तो pseudo code के लिए start को तो हम ignore करते हैं, तो a less than b है, तो इसको English में कैसे बोलेंगे, इसको English में ऐसे बोलेंगे, is a less than b, हो गए English, हो गया pseudo code, तो इसका answer या तो yes आएगा या no आएगा, तो yes या no को pseudo code में जेनरली हम कैसे लिखते हैं, ये तो हमने condition लिख दी, yes आने के बाद जो answer है, या ह एको और फिर लिखते हैं हम एल्स, एल्स का मतलब है अगर ये नहीं हुआ तो क्या करना है, अगर ये नहीं हुआ तो मुझे ये करना है, प्रिंट करवाना है बी को, तो उसको भी हम थोड़ी सी space छोड़ते हैं, और फिर प्रिंट करवाते basically to exit तो यह हमारा पूरा का पूरा pseudo code हो गया for the minimum of two numbers तो इस सवाल से जो हमें नई चीज़ सीखने को मिली वो है कि decision block को flow chart के अंदर कैसे use करते हैं and secondly pseudo code के अंदर जब हमें दिखानी होती है अपनी decision block तो उसको is else या चाहें तो उसे if else की form में भी लिख सकते हैं अब ये if else ही क्यूं हमने कुछ और क्यूं नहीं लिखा उसके पीछे का एक logic है जो जब हम C++ पढ़ेंगे तो C++ के अंदर एक हमारा chapter आएगा called conditional statements, और conditional statements वाले chapter के अंदर basically हम if-else पढ़ते हैं, मतलब decisions बनाने सीखते हैं yes or no वाले, तो वहाँ पर क्योंकि if-else आता है, तो शुरुवात से ही हम if-else लिखने की practice डाल सकते हैं, बस वही logic है यहाँ पे, चाहें तो यहाँ पे इस भी लिख सकते हैं, उससे कोई फर्क नहीं पड़ेगा, and this is how we completed our flowchart and pseudocode, अब next सवाल की तरफ बढ़ते हैं, next question है जिसमें हमें find करना है, हमें जो number दिया हुआ है, हमें एक number दिया जाएगा, let's call this number n, इसको कुछ भी कह सकते हैं, n बोल दिया इसको, हमें पता करना है, यह number odd है या even number है, यह हमारे पास problem है, यह problem हमें समझ में आ गई, बहुत simple problem है, अब मुझे बस analyze करना है, कि मेरे पास input क्या है, 1, 3, 5, 7, 9, 11, कुछ even numbers लिखके देख लेते हैं, 2, 4, 6, 8, 10, 12, इस तरीके से, कि जितने भी even numbers होते हैं, मतलब positive even numbers की हम बात कर रहे हैं, सारे के सारे even numbers 2 की table में आते हैं, और यही से हमें हमारे solution का hint मिलेगा, अगर सारे के सारे numbers 2 की table में आते हैं, तब होगा जब ये n 2 से divide कर दे और completely divide कर जाए मतलब remainder में 0 दे उसका मैं logic बताती हूँ let's suppose मेरा n है 10 तो 10 को जब हम 2 से divide करेंगे ये पूरा का पूरा divide हो जाएगा और remainder में क्या value आएगी remainder में value आईगी 0, लेकिन अगर मेरा n odd होता, let's suppose 9 होता, तो 9 को जब हम 2 से class वाली math मैं कर रही हूँ, तो 2 से divide करते हैं, तो यहाँ 8 minus होता है, और remainder में value क्या आती, remainder में value आती 1, अगर कोई number 2 से divide करके remainder में 0 दे रहा है, मतलब वो एक even number है, अगर कोई divide करके remainder में 1 दे रहा है, मतलब वो एक odd number है, तो हमें अब क लेकिन programming के अंदर एक shortcut होता है remainder निकालने का, और वो shortcut क्या होता है, वो एक operator होता है basically, operator क्या होते हैं, बाद में पढ़ेंगे detail में, जिसे मान लो मुझे दो numbers को add करना है, तो मैं ये plus वाला sign यूज़ कर देती हूँ, मुझे दो numbers को multiply क तो अगर मुझे पता करना होता है कि A को B से डिवाइड करके remainder क्या आएगा, तो ये वाले symbol को हम अपना remainder symbol या अपना modulo symbol कहते हैं, modulo का मतलब यहाँ पे हम remainder समझ सकते हैं, कि A को जब B से डिवाइड करेंगे तो remainder क्या आएगा, तो अगर कह कि 10 को जब 2 से डिवाइड करेंगे, तो remainder 0 आएगा, तो इसकी value 0 होनी चाहिए, अगर मैंने लिख दिया 9 modulo 2, तो मैं 1 की बात करेंगे, क्योंकि remainder 1 आएगा, तो जब भी modulo लिखते हैं, हम basically remainder की बात करते हैं, तो यहां से हमें एक चीज सीखने को मिल गई, तो solution के लिए हमें क्या बात की थी, solution के लिए हमने बात की थी कि अगर हमें odd even निकालना है, तो simply क्या करो, किसी भी number को 2 से divide करके उसका remainder चेक कर लो, कि वो remainder 0 है या नहीं है, तो हम क्या करेंगे, 2 से divide करके remainder नि 2 से divide करके remainder निकालने का मतलब है a modulo b, अब check कर लेंगे क्या ये value 0 है, is this value equal to 0, अब math के अंदर हम single equal to use करते हैं, लेकिन programming के अंदर हम 2 equal to use करते हैं, उसके पीछे का logic भी आपको भी समझ में आएगा, दीरे programming करते हुए, पर ये चीज याद रखनी है ये modulo का symbol होता है और जब भी हमें ये लिखना होता है कि क्या ये value इस value के equal है तो हम single equal to नहीं लगाते हम 2 equal to लगाते हैं, और इन 2 equal to के बीच में हम कोई space नहीं देते, तो जब लिख रहे हैं तो इनको पास-पास लिख सकते हैं, तो यह लिखने का मतलब है कि क्या यह value इस value के equal है, तो या तो इसका answer yes हो सकता है, या फिर इसका answer no हो सकता है, या b क और वो 0 के equal नहीं आता तो number होता है हमारा odd number, तो ये क्या किया हमने overall approach अपने दिमाग में सोच ली कि इस तरीके की approach हमारी बनेगी अगर मुझे निकालना है n odd है या even, तो अब इसका flow chart कैसा देखेगा, flow chart को draw कर लेते हैं, बहुत simple होने वाला है, almost प हम input कर लेंगे अपने n को, अब next step होगा, कि हम n modulo 2 निखाले, और check करें, क्या ये value equal to 0 है, तो हमें check करना है, क्या n modulo 2, is this equal to 0, तो yes या no वाली चीजों के लिए हम क्या करते हैं, हम अपने diamond block को use करते हैं तो diamond block के अंदर यह जो हमारी पूरी की पूरी condition है इसको हम लिख सकते हैं या तो इसका answer yes आएगा या इसका answer no आएगा let's suppose इसका answer या तो yes आता है, या इसका answer no आता है, अब yes वाला case में हम क्या print करवाएंगे, yes वाले case में हम even print करवाएंगे, तो यहाँ पे हम print करवा सकते हैं even, और दूसरी तरफ हम print करवा देंगे odd, क्योंकि ये odd number है तो इस तरीके से हमने क्या किया हमने अपने flow chart को draw कर लिया है and इसको थोड़ा सा और complete कर देते हैं print करवाने के लिए दुबारा से हम अपना parallelogram use करेंगे, and finally दोनों में से, कुछ भी print हो, हमें तो finally करना है exit, तो दोनों ही flows को, arrows को हम जोड़ देंगे अपने exit के साथ, तो ये हमारा flow chart होता है, for the solution to find if a number is order even, इसको एक बार run भी कर लेते हैं, solution काम कर रहा है नहीं कर रहा, let's suppose मेरे पास number है n is equal to 150 this is my number, तो सबसे पहले input ले लिया, 150 आ गया, अब मुझे check करना है कि 150 को जब 2 से divide करते हैं, तो answer क्या आता है, 150 2 से completely divide हो जाएगा, last में 0 आ रहा है, completely divide हो जाएगा, answer 0 ही आएगा yes में जाएगे, print करवा देंगे even, तो मेरे पास 150 के लिए even print हो जाएगा because 150 is an even number तो ये तो इसका flow chart हो गया solution इसके लिए इसका हम pseudo code लिख लेते हैं pseudo code के लिए first जो step होगा, वो होगा to input n, तो यहाँ पर हम input कर देंगे अपने n को, second step जो होगा वो ये value condition है हमें already पता है if condition कैसे लिखते हैं यहां हम लिखेंगे if या is भी लिख सकते हैं, is, if दोनों सेम है, if n modulo 2, बिल्कुल math की तरह operation लिख सकते हैं, is this equal to 0, अगर yes आता है, तो मुझे even print करवाना है, तो थोड़ी सी space दे देंगे, और print करवाएंगे, even, और no आता है pseudo code हो गया for this particular problem तो यह जो pseudo code है यह बिल्कुल जैसा हमें लिख रहा होगा एक single FL statement है जो पूरा logic control कर रही है यहाँ पे भी एक single FL statement है जो पूरा logic control कर रही है तो इस तरीके से और यह standard तरीका होता है आगे जाके जब हम code लिखने शुरू करेंगे DSA के तो कई सारी algorithm होगी जहां पे हमें odd even find out करना होगा किसी number का तो वहाँ पे हम बिल्कुल यही same logic use करने वाले हैं चाहे कितनी भी find करना होगा कि कोई number है या नहीं है तो हम हमेशा उसका 2 के साथ modulo लेकर उसे 0 के साथ ही compare करते हैं, ऐसे ही find out किया जाता है odd even, तो यह काफी standard चीज़ है जिसको हमने सीख लिया है, और इसको आगे के लिए इस logic को हमें याद रख लेना है, तो यह तो हो गया है odd even, next problem जो हमें n अगर 100 हुआ तो 1 से 100 का sum निकालना है, n अगर 1000 हुआ तो 1 से 1000 का sum निकालना है, एक चीज़ वैसे अभी तक आपने notice की होगी, कि योजो हम solutions लिख रहे हैं, ये solution किसी एक value के लिए dependent नहीं है, कि ऐसा नहीं है कि n अगर odd even है, तो मुझे पता ही है कि n 150 ह तो n की value चाहे कुछ भी हो, हमारा sum काम करना चाहे, हमारा sum अच्छे से सही तरीके से calculate होना चाहे, optimal तरीके से, अब वैसे तो sum of n numbers calculate करने का math के अंदर एक direct formula होता है, n into n plus 1 divided by 2, लेकिन हम इस direct formula को use नहीं करेंगे, क्यों use नहीं करेंगे, क्योंकि हम DSA के अंदर logic होता है, तो हम math नहीं सीख रहे हैं, हमें formula use नहीं करने हैं, हमें तो logic देखना है कि कैसे उसी काम को एक program, एक computer से करवाया जा सकता है, अब computer से करवाने से पहले हमें खुद अपना दिमाग use करके उसको solve करना पड़ेगा, तो हम वो दि और मुझे 1 से लेकर n तक का sum निकालना है, तो उसके पहले 1 को add करेंगे, फिर 2 को add करेंगे, basically यह मेरा sum है, जिसके अंदर मैं पहले 1 add कर रही हूँ, 2 add कर रही हूँ, 3 add कर रही हूँ, 4 add कर रही हूँ, 5 add कर रही हूँ, मैं कुछ-कुछ numbers को add कर यह overall logic होता है, math में, paper pen पे करना होता है, तो ऐसे करते हैं, अब इसमें input क्या होगा, input भी मुझे पता है, यह मेरा variable value क्या है, variable मतलब जो चीज change हो सकती है, change क्या हो सकता है, सिर्फ यह n change हो सकता है, शुरुवात तो हमेशा 1 से ही करनी है, व उसको sum में add करो, फिर 3 लो, उसको sum में add करो, फिर 4 लो, उसको sum में add करो, तो क्यों ना हम कोई variable ले ले, या कोई ऐसा placeholder ले ले, placeholder कह सकते है container type, कि मैंने कोई number ले लिया, let's suppose इस number को मैंने count कह दिया, मेरा count है, जिसको मैं 1 से श एक करके इस count को मतलब इस one को मैं sum में store करना शुरू कर दू तो पहले मैंने क्या किया sum के अंदर one store कर दिया फिर इस count को बढ़ा के मैं two कर दू फिर मैंने two को sum में add कर दिया फिर इस count को बढ़ा के मैं three कर दू फिर मैंने इसको sum के अंदर add कर दिया फिर इस count को बढ़ा कर मैं 4 कर दू 4 को sum के अंदर add कर दिया तो 5 को मैंने sum के अंदर add कर दिया और इस count को मुझे तब तक बढ़ाते जाना है जब तक last में मेरे पास n नहीं आ जाता, क्योंकि मुझे तो n numbers का sum चाहिए, उसके आगे मुझे कोई मतलब नहीं है, कि आगे कौन से numbers आने वाले हैं, मुझे तो 0 से लेके n तक का sum चाहिए, और ये sum में, जब मैं इनको बार add करते जा रही हूँ, और ये logic अगर आपको थोड़ा सा यहाँ पे confused feel अगर हो रहा हो किसी student को, और उन्हें लग रहा हो कि, ma'am ये तो मैं शुरू से कैसे solve कर पाऊंगा, ये तो मैं कैसे शुरू से सोच पाऊंगा, मैं आपको बता दू ये शुरू से कोई नहीं सोच पाता अगर आप first time coding कर रहे हैं तो ये process होगा solution निकालने का ये शायद ही कोई student शुरुवात में सोच पाता होगा क्योंकि ये जो पूरा process है ये आपको lecture देखकर ही समझ में आएगा यही से logic थोड़ा तो यहाँ पे कोई गबराने की ज़रूरत नहीं है कि यह मैं खुद से कैसे सोचूंगा, और डीवन का लॉजिक मुझे खुद से कैसे हिट करेगा, नहीं करेगा, इसलिए पहले लेक्चर के अंदर वो concepts, जो खुद से hit नहीं करते हैं उनको हम lecture के अंदर पढ़ते हैं और फिर वो concept जो हमें hit कर सकते थे उनको हम as a homework problem practice करते हैं क्योंकि coding के अंदर DSA के अंदर कोई programmer आज की date में किस इतनी भी बड़ी company के अंदर बैठा हो, चाहे वो CTO level पे क्यों न चला गया हो, कितना भी कोई genius हो, कितना भी किसी के अंदर IQ हो, majority programmers जब शुरुवात करते हैं, जब वो start करते हैं coding को सीखना, तो majority problems उनसे खुछ से solve नहीं होती, majority problems के उन्हें solution समझने पड़ते हैं फिर उस solution से related problems को और हो सकता है जब आप related problems homework problem करो तब भी कुछ चीज़ें खुछ से solve ना हो उसके बाद हम धीरे बार उन problems को solve करते हैं, फिर कुछ नई problems try करते हैं, तब जाके logic build होना शुरू होता है, logic एक class में एकदम से build नहीं होता, और कोई भी nursery class से coding सीखके नहीं आया होता सारी coding जो सीखते हैं वो as a beginner mindset ही हर कोई सीखना शुरू करता है तो ये overall logic है account variable ले लेंगे one से शुरू करेंगे, बार इसकी value बढ़ाएंगे, और इसको sum के अंदर add करना शुरू करेंगे, और sum में finally हमारा solution आ जाएगा, अब यह जो logic है, इसका flow chart भी आपको थोड़ा सा interesting, और थोड़ा सा complex लग सकता है, पर बाकि उसमें एक बार कर लिया तो complex लगने वाली कोई बात नहीं है तो इस solution का flow chart कैसे दिखेगा basically पहले तो मुझे start ही करना है ये काम मेरा favorite है क्योंकि इसमें कुछ सोचना नहीं है दूसरा हमें ये end चाहिए हमें input चाहिए तो मुझे सबसे पहले तो अपना input लेना पड़ेगा n, तो ये number input n लेना पड़ेगा, इसको parallelogram में ले लिया, उसके बाद, अब क्योंकि मुझे sum calculate करना है, शुरुआत में sum की value 0 होगी, तो मुझे एक variable define करना है, basically sum नाम का, math के अंदर variables होते हैं, ज और sum is equal to 0, अब यहाँ पर क्योंकि input output तो है नहीं, तो यह मेरा process block बन जाएगा, इस तरीके का मेरे पास block आ जाएगा, जिसमें सारी की सारी values आ जाएगी, और इतना जो logic है ये मेरे लिए straightforward logic है अब ये जो process block में हमने चीज़ें लिखी है ना programming के अंदर इस step को initialization कहते है initialization का मतलब होता है कुछ starting values दे ना जैसे sum को starting value मैंने 0 दे दी अगर मैं कुछ और calculate कर रही होती तो जरूरी नहीं है value 0 होती, कई बार हो सकता है initialization में value 1 जा रही हो, जिसे count को तो मैं 0 से start नहीं कर रही हूँ, इसको तो मैं 1 से start कर रही हूँ, तो initialize करने के बीचे logic होता है, पर इतना detail में हमें जाने की जरूरत नही मतलब पुरानी जो sum की value है न, उसके अंदर मैं count को add कर दूँ, इस तरीके का मुझे कुछ करना है, जैसे sum के अंदर अगर इतना sum already calculate हो चुका था, तो अब इसमें बस मुझे 4 को और add करना है, पुराने वाले को delete नहीं कर देना, उसमें चीज़ें add करनी कब तक करना है वो पहले बताना बड़ेगा sum is equal to sum plus count काम मैं करना जाती हूँ, ये मेरा process पर कब तक करना है काम? ये काम सिर्फ तब ही करना है, जब count की value less than equal to n हो, जैसे ही count greater than n हो गया, मुझे काम नहीं करना, जैसे 5 को मैंने add कर दिया, अब count की value तो बढ़के 6 भी होगी, count की value तो बढ़के 7 भी होगी, तो क्या मुझे 6 और 7 को भ तो सबसे पहले तो हमें check करना पड़ेगा कि क्या मेरे count की जो value है, is it less than equal to n, पहले तो हमें condition ही check करनी पड़ेगी, तो इसको तो पहले condition block के अंदर हमें लिखना होता है, तो यह मेरी condition है कि क्या count की value less than equal to n है, इसके दो ही जवाब हो स सबसे पहले हमें check करना है कि count less than equal to n है न, and इसे एक बार थोड़ा सा हम resize करके चोटा कर लेते हैं, तो इस तरीके का हमारा अभी तक logic रहा है, जिसमें हमने count को शुरू किया 1 से, sum को शुरू किया 0 से, क्या count less than equal to n है, yes, yes है, तो sum calculate हो चुका होगा, तो हमें print करवा देना है अपने sum को, and इसके लिए अपना parallelogram, यानि output block ले आते हैं, और last में हम कर सकते हैं end, क्योंकि कभी ना कभी ऐसा point तो आएगा ही, जब हमारा count n से बड़ा हो जाएगा अब ये तो मैंने sum calculate कर लिया और count को add कर दिया count पहले था 1 तो मैंने 1 को sum के अंदर add कर दिया अब मुझे इस count को 2 बनाना पड़ेगा, मतलब इस count को मुझे 1 से बढ़ाना पड़ेगा, और किसी भी variable को 1 से कैसे बढ़ा सकते हैं, हम basically count को भी लिख सकते हैं, count is equal to count plus 1, कि count की जो भी पुरानी value थी, उसमें plus 1 आड़ कर दो, तो वो बढ़ और यह बहुत important concept है, जिसको हम यहाँ पर पढ़ रहे हैं, यह concept हमें loops वाले chapter के अंदर help करेगा, हम C++ के अंदर बहुत important concept है, जिसको पढ़ते हैं, which is loops, वहाँ पर यह logic building हमें help करेगी, तो जैसे ही मैंने sum के अंदर count को add कर दिया, अ� एक बार हमने दुबारा count को plus 1 कर दिया, अब count की value मान लो 2 हो गई, तो दुबारा क्या काम करना है, यही वाला काम करना है, दुबारा से count को sum के अंदर add करना है, तो उस step पर कैसे जाएंगे, sum के अंदर add करने से पहले, basically मेरी यह arrow यहाँ पर आकर जुड़ेगी ठीक है sum के अंदर तो add करना है condition ठीक है तभी count add होगा फिर count update होगा फिर condition check होगी तो I hope यह overall logic हमें समझ में आ रहा है इस logic को एक बार थोड़ा सम क्या करते हैं, dry run कर लेते हैं, यह शब्द भी आपको बार-बार सुनने को मिलेगा, dry run करने का मतलब होता है, example लेके अपने solution को analyze करना, मानलो n मिला है 3, n 3 मिला है, चोड़ी value ले ली, चोड़ा solution ले लिया, input कर लिया n yes, 1 is less than equal to 3, तो भाई sum के अंदर 1 को add कर दो, तो sum के अंदर count आड़ हो गया, उसके बाद count को बढ़ा दो, by 1, तो count बढ़ के 2 हो गया, अब दुबारा से चेक करना पड़ेगा, कि क्या ये जो 2 है, क्या ये 2 less than n है, 2 less than 3 है, बार same काम करना है, क्या same काम करना है, sum के अंदर count को add करो, count को increase करो, sum के अंदर count को add करो, count को increase करो, sum के अंदर count को add करो, count को increase करो, जब बार same काम करना होता है, तो उसको हम loop कहते हैं, और वो loop flow chart के अंदर कुछ ऐसा दिखाई देता है less than नहीं है पर equal to तो है, तो 3 को add कर देंगे sum के अंदर, अब count को बढ़ा देंगे, अब count इस बार जब बढ़ नो का मतलब है, अब हमें लूप नहीं चलाना, अब हमें इस लूप से बाहर निकल गए, अब हम यहां आ जाएंगे, अपने sum को print करवा देंगे, sum की क्या value print होगी, 1 plus 2 plus 3, this is equal to 6, final answer 6 print हो जाएगा, और हम कर जाएंगे exit, और अगर हमें 1 से 3 तक numbers का sum नि अब इस पूरे solution के लिए pseudo code लिखते हैं pseudo code भी असान होने वाला है मैंने आपको पहली बताये था यह जो problem है शुरुवात में थोड़ी से difficult लगती है sum of n numbers क्योंकि हम first time देख रहे होते हैं इसी problem, loop को basically हम कुछ जादा difficult है नहीं इसमें तो इसके लिए pseudo code लिखते हैं in fact एक interesting चीज बताऊं यह जो हमने sum 1 से n तक निकाला इसका C++ का code लिखना जादा असान है flow chart से मतलब यह flow chart थोड़ा सा भारी भर कम हो जाता है कभी-कभी, तो इसलिए interviews के अंदर या DSA के सवाल सॉल करते टाइम हम flow chart नहीं बनाते, पर क्योंकि हम शुरुवात कर रहे हैं, तो मैंने आपको यह flow chart बना कर दिखाएं, pseudo code के लिए क्या करेंगे pseudo code के लिए सबसे पहला step तो यही है input कर लो n को तो हमने input कर लिया अपने n को second step है कुछ variables को initialize कर दो count 1 ले लो, sum 0 ले लो count 1 ले लिया, is equal to 1 और जोड़ा है तो यह जोड़ा है while, हम सिर्फ if नहीं लिखते, if का मतलब होता है, if else का मतलब होता है, condition एक बार check हो रही है, लेकिन while का मतलब होता है, वो condition बार check हो रही है, कौन सी condition है वो, वो condition ये वाली condition है, क्योंकि ये condition बार चेक हो रही है ये condition जब yes देती है तो loop चलता है ये condition जब no देती है तो loop नहीं चलता तो ये बहुत important condition है तो इस condition को हम लिखेंगे with the help of this word called while, while का मतलब English के अंदर होता है जब तक, जब तक ये condition सच है, तब तक मेरा loop चलेगा, जैसे ही condition false होगी, हम loop से बाहर आ जाएगे, बहुत simple चीज है, तो while condition क्या है, जब तक count की value less than equal to n है, अगर इसने yes दे दिया, तो yes दे द तो उनको हम थोड़ा सा space लिख कर दिखते हैं, लूप के अंदर पहला काम होगा, कि sum के अंदर हम count को add कर देंगे, और दूसरा काम होगा, कि count के अंदर हम value को कर देंगे, count plus 1, अब ये वो सारे काम है, जो loop जब तक चलता रहेगा तब तक ये काम बार repeat होकर होते रहेंगे पर जैसे ही loop खतम हो गया वैसे हमें ये वाला काम तो करवाना ही पड़ेगा तो fourth step आ जाता है कि जैसे ही loop खतम हो गया हम हमारा जो भी sum होगा हम उसको print करवा देंगे, और fifth step होगा कि हम यहां से exit कर जाएंगे, तो यह overall हमारा pseudo code होने वाला है, for this particular problem, अच्छे यहाँ पे एक और चीज़ मैं आपको सिखाती हूँ, जो थोड़ी सी additional है, जो generally हम C++ करते टाइम सीखते हैं कि मैंने लिख दिया A is equal to A plus 5 इस तरीके का मैंने कुछ लिख दिया तो इसी को short form में लिखने का तरीका होता है A plus equal to 5 और ये तरीका code में हम लिखते हैं, तो code में इसी चीज को लिखने का एक छोटा तरीका ये होता है, plus equal to operator, इसे हम एक तरीके का assignment operator कहते हैं, पर operator क्या होते हैं वो बाद में सीखेंगे, पर इसी चीज को अगर आप short में लिखना जाते हैं, तो आप plus equal तो basically अपने flow chart के अंदर हम ये दो statement लिख रहे हैं, और pseudo code में भी ये दो statement लिख रहे हैं, अब इसी sum is equal to sum plus count को लिखने का दूसरा तरीका है, sum plus equal to count, इसे दूसरी तरीके से लिखने का तरीका है, count plus equal to 1 same way में यहाँ पर इस line को हम लिख सकते हैं sum plus equal to count और इस line को हम लिख सकते हैं count plus equal to वन, तो यह क्या हो जाएगा, थोड़ी सी चीज शॉर्ट हो जाएगी, यह अभी आप उतना अप्रिशेट नहीं करेंगे, क्योंकि अभी तो हम पेपर पेंट पे चीज़ें लिख रहे हैं, पर code में अगर हम ऐसे चीज़ें लिखते हैं, तो वो देखन प्राइम नंबर्स, वैसे तो हमें पता होगा, पर मैथ के अंदर प्राइम नंबर्स वो नंबर्स होते हैं, जो सिर्फ अपनी, अगर कोई नंबर एन है, तो या तो वो अपनी टेबल में आएगा, या वो वन की टेबल में आएगा, उस 3 एक तो एक की table में आता है, एक तीम की table में आता है, इसके अलावा 3 किसी की table में नहीं आता, तो हम कह सकते हैं कि 3 is a prime number, या अगर हम यहाँ पर 7 का example लें, 7 हम सबको पता है कि एक तो 1 की table में आता है, एक खुद की table में आता है, उसके तो 7 को सिर्फ 1 और 7 से ही डिवाइड किया जा सकता है, और किसी से वो डिवाइड करके remainder 0 नहीं देता, तो 7 हो गया, 3 हो गया, 13 हो गया, ये सारे के सारे क्या है, ये सारे के सारे prime numbers हैं, 2 भी एक special prime number होता है जो अकेला even prime होता है even prime कहने का मतलब है कि 2 से अगर कोई बड़ा even number होगा तो 2 से कोई बड़ा even number नहीं होता जो एक prime number होता है 2 अकेला even prime number होता है which is special about 2 and prime numbers obviously हम 2 या 2 से बड़े numbers के लिए ही हमेशा check करते हैं तो ये तो हो गए हमारे prime numbers तो prime के example में जैसे हमारा 2 हो गया, जैसे हमारा 3 हो गया जैसे 5 एक prime number है, 7 एक prime number है 11 एक prime number है, 13 एक prime number है अब बात करते हैं जो non-primes होते हैं इनको non-prime या composite numbers कहते हैं, 4, 1 और 4 की table में तो आते हैं, 6 वन की टेबल में और 6 की टेबल में आता ही है, पर साथ के साथ ये 2 की टेबल में भी आता है, ये 3 की टेबल में भी आता है, तो इसको बहुत सारे factors हैं, तो इस तरीके के जो numbers हैं, जो अपनी और 1 की टेबल में तो आती हैं, पर दूसरे और numbers की 7 मुझे given है, अब 7 के लिए अगर मुझे logically देखना है कि 7 प्राइम है या नहीं है, तो मुझे ये देखना है कि 7 सिर्फ 1 और 7 की table में आ रहा है या नहीं आ रहा है, इनके अलावा किसी और table में तो नहीं आ रहा है, तो हमें 7 को बार-बार क्या 7, 7 की table में आएगा, 7 की table में तो हमेशा आएगा ही, क्या 8 की table में आ सकता है 7, no, because 7 is smaller than 8, जैसे 7, 8 की table में नहीं आ सकता, वैसे 9 की में भी नहीं आ सकता, 10 की में भी नहीं आ सकता, तो basically उसके आगे मुझे चेक करने की ज़रूरत नहीं है, इसको मैं repeat कर बड़े नंबर से तो मुझे multiply करना है ही नहीं, और 7 से भी मुझे नहीं multiply करना, क्योंकि 7 तो हमेशा 7 की table में आएगा ही, और 1 से भी मुझे multiply नहीं करना, क्योंकि 7 तो 1 की table में आएगा ही, क्यों? क्योंकि 1 की table में हर नंबर आता है, अगर 7 तो चलो prime n-1 तक चेक करने की जरूरत है, यहाँ पर भी 2 से लेकर n-1 मतलब 6 तक चेक करने की जरूरत है, तो जब मैं 7 को 2 से डिवाइड करूँगी, मुझे पता चलेगा यह completely divide नहीं होता, फिर मैं 3 से डिवाइड करूँगी, पता चलेगा completely divide नहीं होता remainder 0 नहीं देता, remainder की कहानी हम सब ने पढ़ लिये, 7, 4 से भी completely divide नहीं होता, 5 से भी completely divide नहीं होता, 6 से भी completely divide नहीं होता, क्या हम कह सकते हैं कि 7 अब 6 के लिए देखते हैं, 6 के लिए या किसी भी number के लिए मुझे कहां से कहां तक देखना होता है, 2 से लेकर n-1 तक, तो 6 के लिए मुझे 2, 3, 4 और 5 के लिए चेक करना पड़ेगा, क्या 6, 2 से डिवाइड हो जाता है, yes, 6, 2 से ड logically मुझे एक number दिया जाएगा n, मुझे इस number को 2 से लेकर n-1 तक सारे number से इसका modulo निकालना है, अगर इन सारे numbers को हम किसी variable let's suppose i के अंदर लेने, जैसे हमने count लिया था sum के लिए, वैसे हमने i ले लिया, छोटा है, तो I को पहले हम 2 रखेंगे तो बार-बार मुझे क्या करना है अपने N को मॉड्यूलो लेना है I के साथ और चेक करना है कि क्या ये modulo 0 आता है, या ये modulo 0 नहीं आता, या तो ये yes होगा, या ये no होगा, अगर modulo 0 आ गया, मतलब yes हो गया, तो उसका मतलब number क्या है, उसका मतलब number 1, non-prime number है, क्योंकि 6 अगर 2 से ही डिवाइड हो गया तो non-prime हो गया सिर्फ 1 से ही division काफी होता है लेकिन अगर no आता है तो हम बार ब अभी के लिए ऐसा solution discuss कर रहे हैं, जो work करता है, जो हमें सही answer दे देगा, तो prime number के लिए कैसे check करेंगे, सबसे पहले तो start कर देंगे, very simple, उसके बाद मुझे क्या करना है, उसके बाद मुझे input ले लेना है अपना कोई भी number n जिसके लिए मुझे check करना है prime या non prime तो इसके लिए parallelogram बना लेते हैं next step होगा अपने कुछ variables define करना मुझे बार इसका i के साथ modulo लेना है तो पहले तो यह i ही define करना चाहिए, क्या है i का मतलब, तो i basically हम शुरू करेंगे इस i को 2 के साथ, क्योंकि मुझे 2 से लेकर n-1 तक numbers को divide करना है, तो यह हमारा process block हो गया, अब next step हमारे लिए basically चेक करना होगा कि ठीक है, मुझे n को i से modulo लेकर divide कर मतलब n अगर 6 है, तो i maximum 5 तक जा सकता है, 6 नहीं हो सकता, तो वो condition मुझे check करनी पड़ेगी, condition है कि अगर i less than equal to n minus 1 है, तब ही मुझे n modulo i लेना है, नहीं तो नहीं लेना, तो n modulo i के लिए हमें क्या करना है यहाँ पर यह मेरा एक diamond block आ गया जिसमें या तो yes की condition आएगी या इसमें या तो yes की condition आएगी या फिर इसमें no की condition आएगी पूरे flow chart को हम यहाँ पर थोड़ा सा resize कर लेते हैं कुछ इतना, तो सबसे पहले तो मुझे check करने है, मेरा i valid है क्या i less than equal to n minus 1 है क्या या तो इसका answer no आएगा या इसका answer yes आएगा no कहने का मतलब है कि i बड़ा हो गया i की value n पहुँच गई अब कोई module हो नहीं लेना अब सबसे पहले अपना yes वाला काम खतम करते हैं अगर i वालिड है वालिड कहने का मतलब I limit में है 2 से N-1 की, तो हमें क्या करना है, तो हमें N modulo I को चेक करना है, अगर I वालिड है, मतलब यहाँ पर Yes है, तो अब मुझे N modulo I के लिए चेक करना है कि क्या यह value equal to 0 है, तो यहाँ पर एक और decision block मुझे नो का case क्या कहता है, नो का case कहता है, अगर number divide नहीं हुआ, remainder में 0 नहीं आया, मतलब अगर हम 7 के लिए check कर रहे हैं, और 7 अगर 2 से divide नहीं हुआ, तो क्या करना है, 2 को बढ़ाओ, 2 को 3 करो, और 7 को 3 से divide करो, तो मुझे भी दुबारा से चेक करना है तो दुबारा दुबारा चेक करेंगे, i अभी भी n-1 से less than या equal to है क्या, फिर दुबारा चेक करेंगे, और फिर भी no आया, तो फिर से दुबारा चेक करेंगे, तो ये loop मेरा एक चलता रहेगा, कब चलेगा loop, तब चलेगा, जब मेरा जो i है, n is equal to 7 के लिए, अगर i की value, let me remove all of this, n is equal to 7 के लिए, जो i की value है, वो पहले 2, 3, 4, 5, और 6 तक जानी चाहिए, तो जब तक i की value वैलिड है और जब तक n modulo i 0 नहीं आ रहा, no आ रहा है, तब तक divide करते रहें ना है, मानलो जैसे ही yes आ गया, यह modulo divide करके जैसे ही yes आ गया, बहाँ तो मेरा number कभी prime हो नहीं सकता, मान लो यहाँ पर 6 है और 6 2 से डिवाइड करके 0 आ गया तो मुझे पता चल गया यह non prime number है non prime number है yes वाला case तो यहाँ क्या करेंगे यहाँ print करवा देंगे non prime तो यह मैंने non prime print करवा दिया this is my diamond block, इसे इस तरीके से कर लेंगे, तो ये मेरी condition आ गई, लेकिन अगर वो number n is equal to 7 की तरह निकला, कि पहले 2 से भी divide नहीं हुआ, फिर 3 से भी नहीं हुआ, फिर 4 से भी नहीं हुआ, फिर 5 से भी नहीं हुआ, फिर 6 से भी नहीं हुआ, और finally इस i को बढ� print करवा देंगे prime and इसे भी अपने एक output block के अंदर store कर लेते हैं और finally क्या आ जाएगा finally आ जाएगा exit last में और हम सारे के सारे print वाले statements को इस exit के साथ combine कर देंगे, तो I hope यह logic हमें समझ में आया होगा इस logic को मैं एक बार repeat करके भी दिखा देती हूँ basically overall हम क्या करने की कोशिश कर रहे हैं एक number है जिसको 2 से लेकर n-1 सारे numbers तक हम divide करने की कोशिश करते हैं तो जब तक i की value जब तक वो 2 से लेकर n-1 तक की range में है हमारा i तब तक उससे modulo ले रहे हैं अगर divide नहीं हो रहा तो दुबारा check करेंगे कब तक check करते रहेंगे जब तक i7 नहीं बन जाता अगर i7 बन गया तो prime number है फिर तो हमें बाहर निकलना है लेकिन अगर कहीं भी बीच में divide हो गया divide के लिए मुझे yes मिल गया मतलब वो मेरा एक non prime number इसको किसी भी n के लिए हम check कर सकते हैं, let's suppose my n is equal to 5, n 5 है, तो i की value कहां से शुरू होगी, i की value 2 से start होगी, i is equal to 2 है, सबसे पहले देखेंगे, क्या 2 less than equal to 4 है, हमें i को कहां तक लेकर जाना है, 2 से लेकर n minus 1 यानि 4 तक, तो क्या 2 की value less than equal क्योंकि 5, 2 से divide करके remainder 1 छोड़ता है, तो यहाँ पे भी no आ गया, तो हम i को कर देंगे plus plus, i plus हो गया, मतलब i की value अब 3 हो गई, तो दुबारा जाके check करेंगे, कि क्या 3 less than equal to 4 है, बच्चों वाली math है, yes है तो yes वाले में चले जाएंगे क्या अब 5 modulo 3 0 आता है नहीं आता तो no पे चले जाएंगे अब दुबारा i को plus कर देंगे i बढ़कर अब 4 हो गया तो दुबारा यहाँ पे I को 4 बना के वापस चेक करेंगे कि क्या 4 less than equal to 4 है, भाई less than तो नहीं है पर equal to तो है ना, तो उसके लिए yes मिल गया, अब यहाँ चेक करेंगे क्या 5 modulo 4 equal to 0 है, 5 modulo 4 equal to 0 नहीं होता, 5 modulo 4 equal to 1 होता है क्योंकि 5 4 से divide करके remainder मे क्या 5 less than equal to 4 है, क्योंकि i less than equal to n minus 1 होना चाहिए, क्या 5 less than equal to 4 है, no, इसका answer no है, जैसे ही no हुआ, वैसे ही मुझे पता है अब ये number prime number, तो मुझे क्या print करवाना है, मुझे इसके लिए print करवाना है, that this number is a prime number, and now I am going to exit my program ये मेरा overall logic है आपके लिए मैं homework problem दे रही हूँ और एक बार n is equal to 8 के लिए analyze करना है कि क्या आपका answer क्या आप इस flow chart को समझ पा रहे हैं इसके उपर arrows से आप run कर पा रहे हैं कि logic कहां से कहां गूम रहा है n is equal to 8 के लिए i को आपको लेके जाना है 2 से लेकर 7 तक और analyze करना है कि कहां पर क्या आप prime print करवा रहे हैं, क्या आप non prime print करवा रहे हैं, क्या आपका answer आ रहा है, answer मुझे पता है non prime आना चीज़ी, क्योंकि A-tech non prime number होते हैं, पर क्या आप इस loop के थूँ घूम पा रहे हैं, सारी चीज़ें हो पा रही हैं, वो एक बार आपको, dry run करना है, तो यह तो मेरा flow chart हो गया, अब यह सबसे best तरीका नहीं है, prime को चेक करने का इससे भी और better तरीके pseudo code is also going to be very easy pseudo code के लिए सबसे पहला step है कि मुझे input करना है n को दूसरा step है कि अपने i को initialize कर दो 2 के साथ तीसरा step है कि मुझे condition चेक करनी है पर क्या ये condition मुझे एकी बार चेक करनी है नहीं, यह condition मुझे बार चेक करनी है क्योंकि यह condition कहाँ है, यह condition loop की main condition है अगर यह condition सच होती है तो loop चलता है अगर ये condition false होती है, तो loop रुक जाता है, loop मतलब ये गोल चक्कर, जो हमें flow chart के अंदर दिखाई दे रहा है, यह arrow यहां जा रही है, यह arrow इधर आकर वापिस मिल रही है, तो ये condition main condition है, तो हमने सीखा था, main conditions को while से लिखते हैं, मुझे ये दोनों काम करने हैं, सबसे पहले ये काम करना है, ये क्या काम है, ये काम है कि पहले तो चेक करो, n modulo i equal to 0 है क्या, तो यहाँ पे, अब ये जो condition है, ये वैसे तो loop का part है, पर ये loop की main condition नहीं है, loop की main condition ये है, जिससे loop चलता ह अगर n modulo i equal to 0 हो गया, तो हम क्या करेंगे, yes वाले case में हमें print करवाना है non prime, yes वाले case में हमने क्या print करवाया, non prime, और एक और चीज़ यहाँ पे note करनी है, जैसे ही non prime print करवाया, आगे तो और कुछ करने की ज़रूरत है और else वाले case में क्या करना है, इनेंबी थोड़ा सा हम minimize कर लेते हैं, ये तो हो गया if वाला case, इसके लिए अगर yes आया, तो पहले ये करवाओ, फिर ये करवाओ, इसके लिए अगर no आया, तो पहले i plus equal to 1 हमें करना है, तो else वाले case में i is going अगर ये सच है, तो non-prime print करवा दो, exit कर जाओ, नहीं तो दुबारा i को बढ़ाओ, दुबारा check करो, तो इस तरीके से हमारा loop गोल चेकर में चलता तो एक तो exit यहां हो गया, अगर यहां वाला exit हो गया होगा, तो ना ये काम होगा, सारे काम skip हो जाते हैं, जैसे ही exit आ गया, exit के बाद अगर आप कुछ लिखते हैं, तो वो कुछ नहीं होता, तो जैसे ही अगर यहां पे non-pr इसको हमने flow chart से भी बना लिया, इसको हमने pseudo code से भी बना लिया, लेकिन loops जो हैं, वो generally flow chart and pseudo code से थोड़े से मुश्किल लगते हैं students को, पर मैं आपको पहले एशौर कर रही हूँ, यह देखने में थोड़ी सी डरावनी चीज लग रही है यहाँ प कोड बहुत ही simple और बहुत ही असान होने वाला है, बिल्कुल ABCD की तरह है, तो इसको देखके C++ कोड को, Java कोड को, languages के कोड को judge करने की ज़रूरत नहीं है, ये ठीक है, हम पढ़ते हैं logic building के लिए, पर C++ कोड के अंदर जो loops का syntax होता है, वो मुझे personally बहुत जादा आसान लगता है as compared to flowchart and pseudocode तो code पे विश्वास रखना है कि code आएगा और code असान होगा इससे I can assure you of that तो उसकी हमें tension लेने की ज़रूरत नहीं है तो ये हमने काफी सारे different questions को practice कर लिया है for flowchart and pseudocode, अब जाते जाने से पहले, एक तो मैं आपको कुछ homework problems दूँगी, जिसमें से सबसे पहली problem है to calculate simple interest, basically हमारे पास 3 input होंगे, principle, rate and time, इनको PRT कहते हैं, और formula होता है, कि simple interest is equal to P into R into T, ये simple सा second problem है, जैसे minimum of two numbers हमने किया था, वैसे आपको maximum of two numbers करना है, third problem है, you have to calculate the factorial of a number n, अब n factorial क्या होता ह exclamation से लिखते हैं, इसको पढ़ा कैसे जाता है, पढ़ते हैं हम इसको n factorial कहते हैं हम इसको, n factorial का मतलब होता है 1 into 2 into 3 into 4 into 5 जब तक हम n तक नहीं आ जाते हैं, तो n factorial का मतलब होता है, 1 से लेके n तक सारे numbers को multiply करके जो answer आएगा, उसको हम n factorial कहते हैं, math के अंदर बहुत easy concept आ जो पढ़ा था, इसको calculate करने के लिए हमें flowchart and pseudocode लिखना है, यह बहुत असान भी लग सकता है, challenging लग सकता है थोड़ा सा, इसका जो logic होगा, वो prime number, और हमारे sum of n numbers जैसा होगा, तो basically loop लगाना है इसमें आपको, मैं hint भी दे देती हूँ, 1 से लेके n तक आपका loop जाना चाहिए, तो यह हमें factorial के लिए solve करना है एक और additional चीज मैं आपको दे रही हूँ मान लो आपको last जो question है for a given person's age find if they should get a driving license or not basically आपको किसी भी input में आपको बताना है, driving license मिल सकता है yes या नहीं मिल सकता no, तो आपको किस basis पे check करना है, इंडिया का standard ले, तो age अगर greater than equal to 18 होती है, तब तो driving license मिल जाता है, नहीं तो नहीं मिलता, तो basically ये चीज, ये check आपको लगाना है for the age, to solve this problem, तो ये 4 problems हैं, जिनको as homework problem प्लस इसके साथ में कुछ और additional चीज़ें हैं, जो second chapter start होने से पहले मैं आपके साथ share करना चाहती हूँ, जो हमें पता होनी चाहती है, प्लस हमें कुछ चीज़ें हैं, जो अपने computer के अंदर या अपने laptop के अंदर install करनी पड़ेगी, ताकि हम code करना शुरू कर सकें जब भी code लिखा जाता है जब भी हम किसी problem को solve करते हैं पहले तो problem को हम understand करते हैं फिर उसके हम input analyze करते हैं फिर हम उसका कोई ना कोई solution लिखते हैं और फिर finally उस solution को code के अंदर convert किया जाता है अब यह जो code होता है, यह different languages में लिखा जा सकता है, हम अपने code को C++ के अंदर लिखेंगे, और इस code को लिखने के लिए, हम basically notebook का use नहीं करेंगे, हम एक digital notebook का use करेंगे, digital notebook कहने का मतलब है हमारे पास कुछ editors होते हैं editors softwares होते हैं जो हम अपने laptop या computer के अंदर install करते हैं इन में से काफी famous editor होता है called visual studio code we also call it VS code for short इसको आपको install करना पड़ेगा, और इस digital notebook के उपर हम अपना C++ का code लिखेंगे, अब यह जो code होता है, इस code को मान लो मैंने लिख दिया, क्या होता है code के अंदर, कैसे लिखते हैं, उसको बाद में सीखेंगे, पर मान लो मैंने C++ का code लिख दिया, पर पर computer को सिर्फ electrical signal समझ में आता है, अगर machine के अंदर signal जा रहा है, तो computer उसको समझता है, अगर current नहीं जा रहा, या electricity pass नहीं हो रही, तो उसको समझता है, basically अगर computer के अंदर electricity pass करती है, या signal pass करता है, current pass करता है, तो उसको हम one कहते हैं, और पास नहीं करता तो उसको हम state 0 कहते हैं तो computers को सिर्फ 0 और 1 वाली state समझ में आती है मैं computer हूँ, मैं एक electronic machine हूँ मुझे क्या electricity, electric current pass हो रहा है या नहीं हो रहा है, तो basically 0 और 1 की भाषा में इस C++ code को पहले convert किया जाता है, फिर ये computer को समझ में आता है, तो computer के पास इसे भेजने से पहले, बीच में क्या होता है, बीच में translator होता है, जैसे translators होते हैं, हिंदी से English का अन� तो वैसे ही बीच में हमारे पास भी translators बैठे होते हैं, जो इस C++ code को 0 और 1 वाले code के अंदर convert करते हैं, और फिर उस code को computer को दिया जाता है, यह 0 और 1 वाला code है, जिसको computer को दिया जाता है, और यह जो 0 और 1 वाला code है, इसको हम executable कहते हैं, त उसी से सारा output होता है, यही सारा काम print करवाने का करता है, अब यह जो बीच में translator होता है, इस translator को भी आपको install करना पड़ेगा, translator basically एक C++ compiler होता है, इस compiler को हम translator कहते हैं एन executable फाइल जो run हो सके जिसको computer समझ सके तो internally पहले C++ code executable में convert होता है फिर उसको computer हमारा run करता है तो अपने system पे चाहे आप Mac यूज़ कर रहे हैं चाहे आप Windows यूज़ कर रहे हैं चाहे आप Linux यूज़ कर रहे हैं दो चीज़े हमें install करनी पड़ेगी, सबसे पहला Visual Studio Code, जिसको आपको download करना पड़ेगा, Visual Studio Code Microsoft का एक free software है, जिसको download करने के लिए आपको कोई charges नहीं है, बिलकुल free में कोई भी इसे अपने system के उपर download कर सकता है और एक और चीज मैं आपको बता देती हूँ यह इतना अच्छा software है कि आज आप C++ सेख रहे हैं, कल आप web development करना चाते हैं, या कुछ और सीखना चाहते हैं तो वो code भी आप visual studio code के उपर ही लिख सकते हैं आपको कुछ और download नहीं करना पड़ेगा तो इसको download करना बहुत ज़्यादा important है in fact मैं आपको दिखा भी देती हूं कि visual studio code को हम कहां से download करेंगे हमें जाना है इस link पर which is basically code.visualstudio.com slash download इस website पर जाकर बहुत सारे options हमारे पास होंगे अगर हम एक Mac user हैं तो हम Mac के लिए download कर सकते हैं depending upon हमारे पास Intel chip है या we have Apple Silicon अगर हम Linux पर हैं तो हम download कर सकते हैं अगर हम Windows पर हैं तो हम Windows के लिए download कर सकते हैं जिस भी system पर हैं, आपको simply download पर click करना है, visual studio code का already download करने के लिए, हमने already video बनाया हुआ है, तो उस video का link भी मैं आपको description के अंदर दे दूँगी, वहाँ से जाकर हम help play सकते हैं, बाकि download करना बहुत easy होने वाला है, and second चीज़ जो हमें download करनी है, that is setting up C++ compiler in your system, C++ compiler हमें setup करना पड़ेगा, install करना पड़ेगा, तो ये इसका जो process होता है वो Windows वाले user के लिए अलग process होगा और Mac वाले users के लिए अलग process होगा दोनों का जो process है थोड़ से different होने वाले है तो दोनों को आप कैसे कर सकते हैं, Windows वाली user कैसे setup करें, Mac वाली user कैसे setup करें, उसके अलग-अलग installation के videos हैं, जो हमने already बनाए हुए हैं, उनका link भी आपको दी दिया जाएगा, तो depending upon आपका क्या system है, आप जाके चीज़ें download कर सकते हैं, तो आपको वही step by step process जो है, जो कि completely normal चीज है लेकिन उससे घबराना नहीं है और वहाँ पर ऐसा नहीं करना कि भाई मेरा तो error आ गया मैंने छोड़ दिया हम यहाँ पर DSA सीख रहे हैं लेकिन DSA से भी बढ़कर यहाँ पर हम problems को solve करना सीख रहे हैं और जब हम software install करते हैं, उस error को copy करना है और उस error को जाके simply google करना है internet पर almost हर एक चीज़ का solution होता है, जो आप software install करने जा रहे हैं, वो आप से पहले लाखों लोगों ने install किये हैं, तो उनके solutions भी आपको internet पर मिल जाएंगे, once again इन्हें जो download करने के step by step links हैं, step by step tutorial हैं, उसका link आपको दी दिया गया है, description box में, आपको इन्हें download करना है, अच्छा एक और additional चीज, जैसे visual studio code तो हमें अपने system के उपर download कई सारे कुछ browser based tools हैं, या browser based websites हैं जो exist करती हैं जहाँ पे बिना कुछ install किये हुए आप directly code लिख सकते हैं अब वैसे तो ये ठीक लगता है कि ठीक है मुझे कुछ install भी नहीं करना पड़ा और मैंने directly code कर दिया लेकिन DSA हम long term के लिए सीख रहे हैं DSA ऐसी चीज नहीं है जिसको आपने एक दो माही नहीं सीखा, बाद में आप भूल गए, और बाद में आपको कभी use ��ी नहीं करना पड़ेगा, company जॉइन करने के बाद, जब हम next company में भी apply करते हैं, तब भी हमसे DSA के rounds पूछे जा सकते हैं, तो इसलिए DSA के जो आप इस तरीके से browser based websites मैं आपको recommend नहीं करूँगी, मैं आपको यही recommend करूँगी कि आप visual studio code को download करें, चाहे उसमें आपको extra time ही क्यों न लग जाए, क्योंकि वो आपको long term में बहुत जादा help करेगा, और एक software को अपने laptop के उपर हमें anyways install करना आना चाहि तो यही चीज, Visual Studio Code ही मैं आपको recommend करूँगी for long term, मैं आपको recommend नहीं करूँगी, कि आप browser based websites पर जाकर code करें, शिरुवात में as a beginner थोड़ा साइड difficult लग सकता है, पर long term में आप मुझे thank you बोलेंगे इस चीज को recommend करने के लिए, because it is going to help us as a student, तो I hope कि आज का जो हमारे lecture है उससे हमने कई सारी चीज़ें सीखी होंगी और आने वाले lectures के अंदर भी हम बहुत सारे concepts हैं जिनको सीखने वाले हैं अब पूरी series के तुरू consistency बनाने के लिए हम दो additional चीज़ें और करने वाले हैं सबसे पहला तो, जैसे ही आपका कोई भी lecture खतम हो जाता है, let's suppose आपने lecture 1 complete कर दिया, आप क्या कर सकते हैं, for a sense of achievement as a student, हम जाकर इससे क्या होगा, छोटे-छोटे जो हमारे steps होते हैं, जब हम छोटे-छोटे एक तरीके से tick लग गया, जब हम छोटे-छोटे tick लगाते रहते हैं न, तो long term में वो हमें feeling of happiness देते हैं, तो वो comment करना, वो लिखना, कि मेरा lecture 1 आज इस date पर complete ह� तो एक तो ये चीज additional हम कर सकते हैं, and एक और additional चीज जो हम कर सकते हैं, that is taking the consistency challenge, so basically हमने एक twitter account start किया था, to track the progress for all of the students, जो इस series को follow कर रहे हैं, तो आपको किसी भी lecture के अंदर, अगर आपको लगता है आपने कुछ सीखा है, आपकी कोई नई learning रही है, तो उसको आप लिख सकते हैं, you can also tag us on twitter, तो वो जो आपकी चीज है, कि हर lecture में हम कुछ ना कुछ सीखते जा रहे हैं, वो learning आप दूसरों तक share भी कर सकते हैं, that is basically called learning in public. तो learning in public से क्या होता है you get to share what you are learning everyday और एक बार आप share करना शुरू करते हैं एक बार आप बताना शुरू करते हैं कि हाँ ठीक है आज मैंने ये सीखा आज मैंने ये सीखा तो हमारा बहुत सारे track record बनना शुरू हो जाता है and it gives us a feeling of achievement और जब भी हम DSA स्टार्ट कर रहे हैं, वो feeling of achievement होना बहुत ज़रूरी है, क्योंकि हर दिन हम difficult concepts को definitely सीखने वाले हैं, तो internally एक positive feeling जगाए रखने के लिए, internally consistent रहने के लिए, we have to keep the josh high, and उसके लिए हमने ये दो additional steps लिए हैं, so as a student, if you feel like it, you can follow these steps for consistency, so I hope कि आज के lecture में बहुत सारी learnings रही, ऐसे ही आगे आने वाले lectures के अंदर भी काफी सारी learnings हमें मिल रही होंगी, next lecture number 2 से हम अपनी coding journey की शुरुवात करेंगे, हम code लिखने वाले हैं,