Recursion in Python _ Python Tutorial - Day #30
48 views
Feb 10, 2024
Recursion in Python _ Python Tutorial - Day #30
View Video Transcript
0:00
फंक्शन को हम सभी ने देखा था, काफी मज़ा आया था फंक्शन के बारे में जानने में
0:03
आज आप लोग को बताऊंगा रिकर्शन के बारे में, रिकर्शन बेसिकली फंक्शन सी होते हैं, लेकिन फंक्शन के अंदर उसी सेम फंक्शन को कॉल करते हैं
0:10
तो इसे recursion कहते हैं ये बहुत सारे लोगों का mind blow करते था topic लेकिन कितन��
0:14
आसान है इस वीडियो के बाद आप लोग appreciate कर पाओगे चलते हैं computer screen में और देखते है��
0:17
recursions को किस तरह से python में लिखा जाता है let's get started
0:21
हम लोगों ने जो functions देखे थे अभी तक वो हम एक बार run करते थ��
0:40
मान लो average का function बनाया है और उसके अंदर मैं sum का function use करना चाहता हूँ और definitely मैं कर सकता हूँ ठीक है इसमें कोई भी confusion वाली बात नहीं ह��
0:47
but क्या मैं एक function को उसके अंदर call कर सकता हूँ यह चीज आपको confusing सी लगीगी और आप कहोगे यार मतलब एक minute रुक��
0:56
हमने एक function बनाया है उसे call करने के लिए तो उसके अंदर उसको खुद को call क्यों कर रहे ह��
1:01
let me explain और मैं आप लोगों को बताता हूँ कि कहा पर और किस किस scenario में यह use होता ह��
1:06
एक बहुत ही simple सा उधारण लूँगा पहले उसके बाद आप लोगों को बताऊंगा ठीक है अब देखो, मान लो क��
1:12
मैं बात करता हूँ factorial की अगर आपको नहीं पता factorial क्या होता ह��
1:15
तो मैं आपको बता दूँ कि जो factorial होता है यहाँ पर मै��
1:19
comment यहाँ पर बना लेता हूँ मान लो मैं 7 के factorial की बात करू��
1:24
तो 7 के factorial का मतलब होता है 7 into 6 into 5
1:28
into 4 into 3 into 2 multiply by 1 ठीक है यह होता है 7 का factorial
1:34
और इसकी value कितनी आएगी निकल के वो मुझे नहीं पता आप calculate कर लेन��
1:38
ठीक है जो भी इनको multiply करने के बाद आएगी अगर मैं factorial 6 की बात करू��
1:42
तो मैं 6 से लेके 1 तक multiply करता जाओंगा और मुझे factorial की value मिल जाएग��
1:47
ठीक है Similarly, अगर मैं factorial 5 की बात करूँ तो मुझे ये value जो ह��
1:53
calculate करना पड़ेगी अगर मुझे factorial 5 निकालना है तो and the same goes for factorial 4
1:58
and the same goes for factorial 3 and so on, ठीक ह��
2:02
By definition, जो factorial 0 होता है ठीक है, जो factorial 0 होता ह��
2:08
वो होता है 1, ठीक है ये by definition है, factorial 0 होता ह��
2:12
ठीक है, इस information से क्या मैं ये लिख सकता हूँ कि यार अगर मुझे किसी भ��
2:18
number का factorial निकालना है तो मैं factorial सबसे पहले निकालूंगा number minus 1 multiply n mathematical background maths hate maths life
2:36
तो थोड़ा सा haunting तो लगेगा ये बट ज़रा उपर देखो क्या मैं factorial 7 क��
2:41
7 multiply पर factorial 6 नहीं लिख सकता देखो मैंने जो highlight किया है, वो factorial 6 है
2:46
है की नहीं, और आप लोग थोड़ा सा सोचोगे, तो आपको जवाब हाँ मिलेगा, क्या मैं factorial 6 को
2:52
6 multiply by factorial 5 नहीं लिख सकता, definitely लिख सकता हूँ, तो ये formula तो
2:56
boss correct है, ठीक है, एकदम correct है, absolutely correct है, इस information को
3:01
इस्तेमाल करके क्या मैं recursively factorial calculate कर सकता हूँ the answer is yes और इससे मैं आपको recursional concept
3:09
समझाने वाला हूँ तो let's write it down in the form of a python program कि भाई factorial n अगर मैं निकाल रहा हू��
3:17
तो देखो यार अगर n की value 1 है यहाँ 0 है ठीक है अगर n की value 0 है तो मैं return कर दूँगा 1 ठीक ह��
3:25
और और और n is equal to equal to 1 0 या 1 के लिए 1 value होग��
3:33
वरना क्या value होगी else return n into factorial यानि कि मैंने इसी को call कर दिय��
3:41
n minus 1 ठीक है तो क्या ये कहना सही है absolutely सही है ठीक ह��
3:46
क्या ये मुझे factorial calculate करके देगा function क्या python ये बात accept करेग��
3:53
कि factorial n के अंदर मैंने factorial n-1 को call कर दिय��
3:56
नहीं कि same function को मैंने उसके अंदर call कर दिया the answer is yes
4:01
अब मैं आपको दिखाता हूँ कि अगर मैं print करता हूँ factorial of 3
4:08
3 क्यों choose किया मैंने ताकि हम लोग जो है खुद से भी इसको evaluate कर पाए��
4:13
और 4 और 5 अब आप देखो मैंने factorial 3 जब calculate करने की कोशिश क��
4:18
3 multiply by 2 multiply by 1 जो की 6 मेरे यहाँ पर मुझे मिल गय��
4:22
4 की अगर मैंने calculate करने की कोशिश की तो 4 multiply by 3 multiply by 2 multiply by 1 जो की 24 होता ह��
4:28
वो मुझे मिल गया factorial 5 जो की यह था 5 40 20 30 60 20 120
4:33
यहाँ पर मिल गया ठीक है तो हमने यहाँ पर क्या किय��
4:37
कि एक function के अंदर उसी को call किया लेकिन अलग argument के सा��
4:42
n-1 argument के साथ तो यह function काम कैसे कर रहा है यह मैं तरह समझा दो आप लोगों क��
4:46
सबसे पहले क्या होगा factorial 5 calculate करने चलेगा वो मैं इन दोनों को हटा देता हू��
4:52
जरा इन दोनों को हटा देता हूँ Factorial 5 Calculate Factorial 5 Calculate 5 multiply by 5 multiply by factorial 4
5:09
अब आप बोलो के हाँ ठीक है मुझे factorial 5 जानना था लेकिन 5 multiply by factorial 4 कर लू��
5:14
हाँ बाई, 5 multiply by factorial 4 कर लूँ और factorial 4 की value पता कर लू��
5:19
अब factorial 4 की value पता करने में दुबारा जाओंगा, मैं कहूँगा भा��
5:23
इस बार n की value 4 है, वो बोलेगा एक काम करो, तुम क्या करो न��
5:27
factorial 4 चीज़े ना तुम्हें 4 multiply by factorial 3 ठीक है, 4 multiply by factorial 3
5:34
फिर क्या होगा factorial 3 चाहिए न 3 multiply by factorial 2
5:40
factorial 2 ठीक है अब चाहिए कि factorial 2 चाहिए न तुम्ह��
5:49
2 multiply by factorial 1 इस बार चीज़े थोड़ी सी बदलेंगी ठीक ह��
5:54
इस बार कैसे बदलेंगी चीज़े थोड़ी सी ऐसे बदलेंगी कि factorial 1 जब हम calculate करने चलेंग��
6:00
तो instead of going to else ये इस बार if condition हमारी true हो जाएग��
6:04
क्योंकि n की value 1 है और हमें 1 return होके मिल जाएगा तो इसको अगर मैं ऐसे लिख द��
6:09
तो मुझे अब value मिल चुकी है 5 multiply by 4 multiply by यार��
6:15
Siri क्यों activate हो गया Siri stop पता नहीं यार क्या चल रहा है य��
6:21
अरे Siri, परशान मत कर मुझे, हाँ ठीक है, कोई बात नहीं, 5 multiply by 4 multiply by 3 multiply by 2 multiply by 1, ठीक है, 5 x 20, 3 x 60, 2 x 120, तो 120 value में यह evaluate हो जाएगा, ठीक है, I hope कि यह जी समझ में आ गए आप लोगों को, अब देखो, मैंने यहाँ पर क्या लिखा हुआ, इसको पढ़ते हैं, और और समझने की को��
6:51
फैक्टोरियल को गुसा दिया तो इसे गहते हैं कि defining something in terms of itself एक और example
6:57
बहुत ज़्याता popular है और वो है calculation of Fibonacci series Fibonacci sequence जो है उसक��
7:03
formula होता है कि अगर आपको Fibonacci series निकालनी है मैं यहाँ प��
7:07
Fibonacci number यहाँ पर मैं जाता हूँ और आपको मैं दिखाता हूँ यहाँ पर क��
7:11
F0 override होता है F1 override होता है और बाकी के आपको कोई भी निकालना है न��
7:15
नमबर तो पिछले दो नमबर को आड़ कर लो तो 0, 1 होगा फिर इसके बाद दो नमबर को आड़ कर ल��
7:20
तो F0 क्या होता है F0 होता है 0 F1 1 0 1 F2 formula F2 F1 plus F0 F1 plus F0 Fn Fn minus 1 plus Fn minus 2
7:48
कुछ इस तरह से आप निकाल सकते हो पिछले दो नंबर्स को आइट करके अब आपको एक क्विक कुइस देता हू��
7:53
जिसका आप लोग को रैपलेट के कॉमेंट सेक्शन में जवाब देना है अपनी रैपल बनाक��
7:57
और वो यह है कि बाया आपको फिमोनाची सीरीज फिबुनाची सीक्वेंस अब आपको करना यह कि फिबुनाची सीक्वेंस प्रिंट करने का प्रोग्राम लिखना तो मैं यहां प��
8:24
लिख देता हूं कि क्विज आपके लिए है यह राइट अ प्रोग्राम प्रोग्राम टू प्रिंट दिफर बुनाची सीक्वें��
8:36
ठीक है राइट प्रोग्राम प्रिंट दी फिबोनाची सीक्वेंस ठीक है तो य��
8:39
F0, 0 हो गया F1, 1 हो गया F2 F1 प्लस F0 हो गया Fn
8:43
Fn-1 प्लस Fn-2 हो गया ठीक है I hope कि ये जी समझ में आ गया आप लोगों क��
8:48
और आप लोग इसको ज़रूर बनाओगे मुझे नीचे कमेंट सेक्शन में जरूर बनाना है इस प्रोग्राम को बनाकर और खुद से चेक जरूर कर लेन��
8:54
देखो फिबराची सीक्वेंस जनरेट करना बहुत आसान है पहले जीरो है फिर वन है फिर इन दोनों को जोड़ूंगा तो बनाएग��
9:00
फिर इन दोनों को जोड़ूंगा तो 2 आएगा फिर इन दोनों को जोड़ूंगा तो 3 आएग��
9:04
फिर इन दोनों को जोड़ूंगा तो 5 आएगा फिर 5 और 3 आठ आएग��
9:10
और इसे बढ़ते हैं आपको यह नहीं करना चाहिए तो 0 प्लस 1 या 1 होता ह��
9:16
तो अगर आप निकाल रहे हो जी रो वांट टू थ्री फॉर फाइव 6 अगर आप ऐप निकाल रहे हो तो आपको इतना चाहि��
9:28
ऐसा प्रोग्राम आपको लिखना है आई हॉप कि चीज क्लेयर आप सभी को अगर अभी तक आप लोगों ने यह प्लेलिस्��
9:33
तो यहां क्लिक करके बुकमार्क करें यहां क्लिक करके सेव करें इस वीडियो में इतना है गैस थैंक य��
9:38
सो मच गैस वॉचिंग इस वीडियो एंड आई वॉल सी यू नेक्स्ट टाइम ��
#Programming
#Science
#Scripting Languages