1 00:00:00,000 --> 00:00:03,944 >> [संगीत बजाना] 2 00:00:03,944 --> 00:00:10,732 3 00:00:10,732 --> 00:00:11,690 डेविड मालन: ठीक है। 4 00:00:11,690 --> 00:00:14,674 इस CS50 है, और इस सप्ताह 2 का अंत है। 5 00:00:14,674 --> 00:00:16,840 मैंने सोचा कि मैं नहीं हो सकता है तो माफी चाहता हूँ वहाँ आज आप सभी के साथ, 6 00:00:16,840 --> 00:00:18,300 लेकिन आप बहुत अच्छे हाथों में हो। 7 00:00:18,300 --> 00:00:21,710 मुझे अपने बारे में बताने का मौका दो CS50 के स्वयं के रोब बोडेन। 8 00:00:21,710 --> 00:00:29,106 9 00:00:29,106 --> 00:00:31,730 आरओबी BOWDEN: और हां, तो हम इस तथ्य का मजाक बनाने के लिए है 10 00:00:31,730 --> 00:00:36,820 वह हमें एक ऊर्ध्वाधर भेजा कि वीडियो और इस शो। 11 00:00:36,820 --> 00:00:38,320 >> [वीडियो प्लेबैक] 12 00:00:38,320 --> 00:00:39,820 >> [संगीत बजाना] 13 00:00:39,820 --> 00:00:42,350 >> [नक्शेकदम] 14 00:00:42,350 --> 00:00:44,730 >> -यह वीडियो नहीं किया इस तरह से देखने के लिए है। 15 00:00:44,730 --> 00:00:46,570 इसे रोका जा सकता था। 16 00:00:46,570 --> 00:00:49,070 कोई खड़ी वीडियो के लिए कहो। 17 00:00:49,070 --> 00:00:53,310 >> -Vertical वीडियो जब आप को कुछ नहीं अपने कैमरे में गलत तरीके से पकड़। 18 00:00:53,310 --> 00:00:55,880 आपके वीडियो का अंत हो जाएगा ऊपर बकवास की तरह देख रहे हैं। 19 00:00:55,880 --> 00:00:57,650 >> - [ग्रन्ट] 20 00:00:57,650 --> 00:01:02,240 >> आदी अधिक से अधिक लोगों को वहाँ रहे हैं हर दिन खड़ी वीडियो बनाने के लिए। 21 00:01:02,240 --> 00:01:06,240 यह दरार या कुछ भी नहीं कर रहा है, लेकिन यह अभी भी वास्तव में बुरा है। 22 00:01:06,240 --> 00:01:10,410 की दो अलग अलग प्रकार के होते हैं वीवीएस से पीड़ित हैं, जो लोगों को। 23 00:01:10,410 --> 00:01:14,160 पहले समूह को मानते हैं वीडियो में वे चित्रों की तरह गोली मार। 24 00:01:14,160 --> 00:01:15,850 वे किसी भी नुकसान मतलब नहीं है। 25 00:01:15,850 --> 00:01:19,180 वे सिर्फ इतना है कि समझ में नहीं आता आप एक तस्वीर बदल सकते हैं, जबकि 26 00:01:19,180 --> 00:01:20,880 आप वास्तव में एक वीडियो चालू नहीं कर सकता। 27 00:01:20,880 --> 00:01:21,880 >> [दुर्घटनाग्रस्त] 28 00:01:21,880 --> 00:01:23,460 >> - [बंदर ध्वनियों] 29 00:01:23,460 --> 00:01:27,540 >> -इस अन्य वर्ग के लोगों को है जो एक [आवाज़] देना नहीं है। 30 00:01:27,540 --> 00:01:31,090 >> -Vertical वीडियो सिंड्रोम खतरनाक है। 31 00:01:31,090 --> 00:01:34,120 मोशन पिक्चर्स है हमेशा क्षैतिज गया। 32 00:01:34,120 --> 00:01:35,990 टीवी क्षैतिज हैं। 33 00:01:35,990 --> 00:01:38,380 कंप्यूटर स्क्रीन क्षैतिज हैं। 34 00:01:38,380 --> 00:01:41,580 लोगों की आँखों क्षैतिज हैं। 35 00:01:41,580 --> 00:01:45,170 हम करने के लिए नहीं बनी हैं खड़ी वीडियो देखने। 36 00:01:45,170 --> 00:01:47,600 >> -मैं खड़ी वीडियो प्यार करता हूँ। 37 00:01:47,600 --> 00:01:50,410 >> -Nobody आप के बारे में परवाह नहीं है। 38 00:01:50,410 --> 00:01:53,340 >> -यदि इस समस्या का अनियंत्रित, तुम भी छोड़ दिया 39 00:01:53,340 --> 00:01:57,650 चार वीडियो दिखा शुरू हो जाएगा एक बार में सिर्फ बैंडविड्थ को बचाने के लिए। 40 00:01:57,650 --> 00:02:02,400 >> -Letterboxed खड़ी वीडियो होगा एक डाक टिकट के आकार का हो। 41 00:02:02,400 --> 00:02:04,920 >> -और यह हर जगह फैल जाएगा। 42 00:02:04,920 --> 00:02:07,670 मूवी स्क्रीन है हमेशा क्षैतिज गया। 43 00:02:07,670 --> 00:02:11,200 खड़ी वीडियो हो जाते हैं स्वीकार किए जाते हैं, फिल्म थिएटर 44 00:02:11,200 --> 00:02:13,930 लंबा और पतला होना पड़ेगा। 45 00:02:13,930 --> 00:02:17,710 >> -और फिल्म सिनेमाघरों के सभी होगा नीचे फाड़ा और फिर से बनाया जाना है। 46 00:02:17,710 --> 00:02:22,090 और जब तक वे फिर से बनाया गया, मिला कुनिस पुराने और कुरूप होगा। 47 00:02:22,090 --> 00:02:24,342 >> -Birds उन्हें में दुर्घटना और मर जाएगा। 48 00:02:24,342 --> 00:02:26,530 >> -We'll सभी कड़ी मिल ऊपर दिख से गर्दन। 49 00:02:26,530 --> 00:02:29,800 >> -और कोई नहीं में बैठेंगे आगे की पंक्ति फिर कभी। 50 00:02:29,800 --> 00:02:37,170 >> जॉर्ज लुकास फिर से रिलीज होगी स्टार युद्धों पतली संस्करण again--। 51 00:02:37,170 --> 00:02:41,860 >> -मैं बताने के लिए वास्तव में सक्षम नहीं था मैं बताना चाहता था कि कहानी। 52 00:02:41,860 --> 00:02:46,030 यह मेरे लिए एक बहुत अच्छा मौका था एक नई तकनीक के साथ प्रयोग। 53 00:02:46,030 --> 00:02:48,150 >> -तुम घटिया हो। 54 00:02:48,150 --> 00:02:54,430 >> एक मोबाइल डिवाइस के लिए प्रयोग किया जाता है -Every समय वीडियो रिकॉर्ड, प्रलोभन है। 55 00:02:54,430 --> 00:02:56,370 बस नहीं कहना। 56 00:02:56,370 --> 00:03:00,116 जॉर्ज लुकास के लिए नहीं कहा। 57 00:03:00,116 --> 00:03:04,062 पुरानी मिला कुनिस के लिए नहीं कहा। 58 00:03:04,062 --> 00:03:06,600 कोई खड़ी वीडियो के लिए कहो। 59 00:03:06,600 --> 00:03:12,511 >> यदि आप किसी को यह कर देखते हैं, तो और, कहते हैं, "आपको लगता है कि सही डमी शूटिंग नहीं कर रहे हैं!" 60 00:03:12,511 --> 00:03:15,433 >> [संगीत बजाना] 61 00:03:15,433 --> 00:03:18,842 62 00:03:18,842 --> 00:03:19,830 >> [अंत प्लेबैक] 63 00:03:19,830 --> 00:03:23,702 >> [वाहवाही] 64 00:03:23,702 --> 00:03:27,598 >> [ऑडियो आउट] 65 00:03:27,598 --> 00:03:44,041 66 00:03:44,041 --> 00:03:45,790 आरओबी BOWDEN: --simple क्रिप्टोग्राफी का रूप है, 67 00:03:45,790 --> 00:03:49,500 जो मूल रूप से एन्क्रिप्शन है गुप्त संदेश की और डिक्रिप्शन। 68 00:03:49,500 --> 00:03:52,590 यहाँ तो हम एक बहुत ही सरल खिलौना है। 69 00:03:52,590 --> 00:03:56,900 और विचार बाहरी रिंग है आंतरिक रिंग के चारों ओर घूमता है। 70 00:03:56,900 --> 00:04:01,610 और तुम मैं ज़ूम हो सकता है अगर, देख सकते हैं में, यह देखने के लिए मुश्किल है that--। 71 00:04:01,610 --> 00:04:05,090 लेकिन, जैसे, संख्या 1-- ठीक है, कि ले जाया गया। 72 00:04:05,090 --> 00:04:09,120 >> नंबर 1 पत्र के नक्शे पत्र के लिए एक्स, नंबर 2 के नक्शे 73 00:04:09,120 --> 00:04:11,630 जे मुश्किल अविश्वसनीय रूप से आगे छोड़ करने के लिए नहीं। 74 00:04:11,630 --> 00:04:16,100 पत्र 2 जे के नक्शे संख्या 3 तो डी के नक्शे 75 00:04:16,100 --> 00:04:20,140 इस अंगूठी के साथ आप दे सकते हैं किसी को एक संदेश 1, 2, 3। 76 00:04:20,140 --> 00:04:22,624 किसी कारण से आप के लिए उन्हें XJD बताना चाहता हूँ। 77 00:04:22,624 --> 00:04:24,540 लेकिन अगर आप उन्हें दे सकते हैं संख्या के कुछ संदेश है, 78 00:04:24,540 --> 00:04:28,460 और वे इस अंगूठी के रूप में लंबे समय के रूप में, वे आप कहने की कोशिश कर रहे हैं क्या डिक्रिप्ट कर सकते हैं। 79 00:04:28,460 --> 00:04:32,510 >> तो अगर आप देखा हो सकता है यह क्रिप्टोग्राफी का विशिष्ट उदाहरण 80 00:04:32,510 --> 00:04:36,640 इससे पहले कि क्रिसमस के मौसम के आसपास है, तो आप एक क्रिसमस स्टोरी देख चुके है। 81 00:04:36,640 --> 00:04:38,520 आप कभी नहीं देखा गया है यह पहले, तो बस 82 00:04:38,520 --> 00:04:41,060 सचमुच में टीबीएस मोड़ पर है | क्रिसमस की पूर्व संध्या पर किसी भी समय, 83 00:04:41,060 --> 00:04:44,510 वे अभी वापस करने के लिए इसे वापस दिखाने क्योंकि पूरे दिन वापस करने के लिए वापस करने के लिए वापस करने के लिए। 84 00:04:44,510 --> 00:04:46,744 और प्रासंगिक वीडियो यह है। 85 00:04:46,744 --> 00:04:47,410 [वीडियो प्लेबैक] 86 00:04:47,410 --> 00:04:50,020 यह सभी और विविध के लिए जाना जाता रहो राल्फ पार्कर एतद्द्वारा है कि 87 00:04:50,020 --> 00:04:52,850 लिटिल के सदस्य नियुक्त अनाथ एनी गुप्त सर्किल 88 00:04:52,850 --> 00:04:56,490 और सभी सम्मान के हकदार है और लाभ बहां होने वाली। 89 00:04:56,490 --> 00:04:59,010 छोटे से अनाथ एनी हस्ताक्षर किए गए। 90 00:04:59,010 --> 00:05:03,120 स्याही में पियरे आंद्रे प्रतिहस्ताक्षरित! 91 00:05:03,120 --> 00:05:07,460 सम्मान और लाभ पहले से ही नौ साल की उम्र में! 92 00:05:07,460 --> 00:05:12,530 >> [रेडियो से चिल्ला] 93 00:05:12,530 --> 00:05:13,030 -चलो। 94 00:05:13,030 --> 00:05:14,000 इसके साथ पर मिलता है। 95 00:05:14,000 --> 00:05:18,274 मैं सब जाज की जरूरत नहीं तस्करों और समुद्री डाकुओं के बारे में। 96 00:05:18,274 --> 00:05:20,440 साथ -listen कल रात समापन साहसिक 97 00:05:20,440 --> 00:05:22,540 काले समुद्री डाकू जहाज की। 98 00:05:22,540 --> 00:05:25,460 अब इसके लिए समय आ गया है एनी गुप्त संदेश 99 00:05:25,460 --> 00:05:28,620 गुप्त सर्किल के सदस्यों के लिए। 100 00:05:28,620 --> 00:05:32,370 बच्चों, केवल सदस्यों को याद रखें एनी की सीक्रेट सर्किल की 101 00:05:32,370 --> 00:05:34,880 एनी के गुप्त संदेश को डिकोड कर सकते हैं। 102 00:05:34,880 --> 00:05:39,100 याद रखें, एनी आप पर निर्भर करता है। 103 00:05:39,100 --> 00:05:41,660 बी 2 के लिए अपने पिन सेट करें। 104 00:05:41,660 --> 00:05:43,960 यहाँ संदेश है। 105 00:05:43,960 --> 00:05:44,680 12। 106 00:05:44,680 --> 00:05:45,180 1 1। 107 00:05:45,180 --> 00:05:45,679 2। 108 00:05:45,679 --> 00:05:48,110 -मैं मेरा पहला गुप्त बैठक में हूँ। 109 00:05:48,110 --> 00:05:49,030 >> -25। 110 00:05:49,030 --> 00:05:49,834 14। 111 00:05:49,834 --> 00:05:51,040 1 1। 112 00:05:51,040 --> 00:05:51,854 18। 113 00:05:51,854 --> 00:05:52,670 16। 114 00:05:52,670 --> 00:05:54,570 >> -ओह, पियरे महान आवाज आज रात में है। 115 00:05:54,570 --> 00:05:57,490 मुझे लगता है कि आज रात बता सकता है संदेश वास्तव में महत्वपूर्ण था। 116 00:05:57,490 --> 00:05:57,990 -3। 117 00:05:57,990 --> 00:06:00,080 25। 118 00:06:00,080 --> 00:06:01,580 यही कारण है कि एनी खुद से एक संदेश है। 119 00:06:01,580 --> 00:06:02,880 किसी को बताना नहीं है, याद रखें। 120 00:06:02,880 --> 00:06:07,840 121 00:06:07,840 --> 00:06:11,130 >> -Five सेकंड बाद में, मैं ही में हूँ घर में कमरे में जहां नौ का एक लड़का 122 00:06:11,130 --> 00:06:15,830 गोपनीयता और व्याख्या में बैठ सकता है। 123 00:06:15,830 --> 00:06:16,620 अहा! 124 00:06:16,620 --> 00:06:17,340 बी! 125 00:06:17,340 --> 00:06:20,210 मैं अगले करने के लिए चला गया। 126 00:06:20,210 --> 00:06:23,300 ई पहला शब्द "होना है।" 127 00:06:23,300 --> 00:06:25,880 एस यह अब आसान आ रहा था। 128 00:06:25,880 --> 00:06:28,400 यू 25। 129 00:06:28,400 --> 00:06:30,528 यही कारण है कि आर है 130 00:06:30,528 --> 00:06:31,278 आओ पर, Ralphie! 131 00:06:31,278 --> 00:06:31,861 मुझे जाना ही होगा! 132 00:06:31,861 --> 00:06:33,182 ठीक नीचे होना -I'll, मा! 133 00:06:33,182 --> 00:06:36,038 हाइ - फाइ पढ़ाकू। 134 00:06:36,038 --> 00:06:42,840 क्या करना सुनिश्चित करें - टी ओ "यकीन है कि"? 135 00:06:42,840 --> 00:06:44,770 लिटिल अनाथ था क्या एनी कहने की कोशिश? 136 00:06:44,770 --> 00:06:46,381 क्या करने के लिए यकीन है कि हो सकता है? 137 00:06:46,381 --> 00:06:47,825 >> -Randy जाने के लिए मिल गया है! 138 00:06:47,825 --> 00:06:48,866 आप बाहर आ करेंगे? 139 00:06:48,866 --> 00:06:49,783 >> -सभी सही, माँ! 140 00:06:49,783 --> 00:06:51,786 मैं ठीक से बाहर हो जाएगा! 141 00:06:51,786 --> 00:06:53,606 मैं करीब अब हो रही थी। 142 00:06:53,606 --> 00:06:55,550 तनाव भयानक था। 143 00:06:55,550 --> 00:06:57,050 यह क्या था? 144 00:06:57,050 --> 00:06:59,905 ग्रह के भाग्य अधर में लटका सकता है! 145 00:06:59,905 --> 00:07:01,736 >> -Ralphie, रेंडी जाना है! 146 00:07:01,736 --> 00:07:05,680 >> जोर से रोने के लिए, सही बाहर हो -I'll! 147 00:07:05,680 --> 00:07:07,170 लगभग वहाँ! 148 00:07:07,170 --> 00:07:08,150 मेरी उंगलियों के लिए उड़ान भरी। 149 00:07:08,150 --> 00:07:09,980 मेरा मन एक इस्पात जाल था। 150 00:07:09,980 --> 00:07:11,496 हर रोम स्फूर्त। 151 00:07:11,496 --> 00:07:13,268 यह लगभग स्पष्ट हो गया था! 152 00:07:13,268 --> 00:07:13,767 हाँ। 153 00:07:13,767 --> 00:07:14,609 हाँ। 154 00:07:14,609 --> 00:07:15,108 हाँ। 155 00:07:15,108 --> 00:07:16,449 हाँ। 156 00:07:16,449 --> 00:07:20,240 अपने Ovaltine पीने के लिए सुनिश्चित हो। 157 00:07:20,240 --> 00:07:20,740 Ovaltine? 158 00:07:20,740 --> 00:07:26,687 159 00:07:26,687 --> 00:07:27,520 एक फालतू वाणिज्यिक? 160 00:07:27,520 --> 00:07:32,040 161 00:07:32,040 --> 00:07:34,920 दुष्ट। 162 00:07:34,920 --> 00:07:35,890 >> [अंत प्लेबैक] 163 00:07:35,890 --> 00:07:39,650 >> आरओबी BOWDEN: तो है कि कैसे है Ovaltine क्रिप्टोग्राफी से संबंधित है। 164 00:07:39,650 --> 00:07:42,290 असल में CS50 सिर्फ विज्ञापित Ovaltine, तो हम कर सकते थे 165 00:07:42,290 --> 00:07:44,400 Ovaltine के लिए एक फालतू वाणिज्यिक होना। 166 00:07:44,400 --> 00:07:44,900 ठीक है। 167 00:07:44,900 --> 00:07:47,120 तो अब वास्तविक कंप्यूटर विज्ञान। 168 00:07:47,120 --> 00:07:50,670 सोमवार को याद रखें कि हम से दूर छोड़ दिया तार में गहरी डाइविंग। 169 00:07:50,670 --> 00:07:52,820 तो हम साथ काम कर रहे थे स्ट्रिंग "Zamyla।" 170 00:07:52,820 --> 00:07:55,130 और हम पहचानने थे हम इलाज कर सकते हैं तथ्य यह है कि 171 00:07:55,130 --> 00:07:57,510 पात्रों के एक दृश्य के रूप में "Zamyla"। 172 00:07:57,510 --> 00:07:59,740 और हम पता चला कि याद ब्रैकेट संकेतन। 173 00:07:59,740 --> 00:08:01,995 इस संग्रहीत किया गया तो अगर फिर एक स्ट्रिंग में "एस" 174 00:08:01,995 --> 00:08:05,860 हमने कहा कि अगर ब्रैकेट 0, कि होगा पत्र राजधानी जेड का संकेत 175 00:08:05,860 --> 00:08:09,790 और हम ब्रैकेट 1, ने कहा है कि यदि पहले लोअरकेस एक संकेत होता है, 176 00:08:09,790 --> 00:08:14,220 और इतने पर ब्रैकेट 5 तक, जो पिछले एक संकेत होगा। 177 00:08:14,220 --> 00:08:17,090 >> अब जब कि याद इस स्ट्रिंग की लंबाई, 6 178 00:08:17,090 --> 00:08:23,220 लेकिन स्ट्रिंग में सूचकांक हैं 0 से 5 तक, उस के माध्यम से Z एक पिछले। 179 00:08:23,220 --> 00:08:28,650 तो यह अब एक बड़ी तस्वीर में फिट बैठता है आपके कंप्यूटर की मेमोरी, अपने राम की। 180 00:08:28,650 --> 00:08:32,020 तो कहीं कार्यक्रम कि आप अपने कंप्यूटर चला रहे हैं 181 00:08:32,020 --> 00:08:34,780 Zamyla याद करने की जरूरत है स्मृति में कहीं। 182 00:08:34,780 --> 00:08:36,029 तो मैं एक स्वयंसेवक हो सकती है? 183 00:08:36,029 --> 00:08:38,840 184 00:08:38,840 --> 00:08:40,181 हाँ कृपया। 185 00:08:40,181 --> 00:08:50,120 186 00:08:50,120 --> 00:08:51,500 और तुम्हारा नाम क्या है? 187 00:08:51,500 --> 00:08:52,410 >> डीन: डीन। 188 00:08:52,410 --> 00:08:53,550 >> आरओबी BOWDEN: डीन? 189 00:08:53,550 --> 00:08:54,910 डीन आपसे मिलकर अच्छा लगा। 190 00:08:54,910 --> 00:08:58,240 तो यहाँ पर आते हैं, और हम आपको आकर्षित किया जा रहे हैं 191 00:08:58,240 --> 00:09:00,740 स्मृति के बारे में हमारी अच्छी निफ्टी लेआउट पर। 192 00:09:00,740 --> 00:09:05,950 अब मैं स्मृति के बारे में सोचना पसंद बाइट्स की एक लंबी पट्टी के रूप में, 193 00:09:05,950 --> 00:09:11,090 लेकिन सिर्फ प्रदर्शन प्रयोजनों के लिए हम करेंगे बस नीचे करने के लिए सही, शीर्ष करने के लिए छोड़ दिया है। 194 00:09:11,090 --> 00:09:11,590 ठीक है? 195 00:09:11,590 --> 00:09:22,030 >> तो मैं एक शो करने जा रहा हूँ Getstrings.c program--। 196 00:09:22,030 --> 00:09:25,760 और इसलिए सभी को इस कार्यक्रम है कर रही चार तार अनुरोध किया है 197 00:09:25,760 --> 00:09:28,830 साथ उपयोगकर्ता से GetString और फिर मुद्रण 198 00:09:28,830 --> 00:09:30,950 जो कुछ भी है कि पहली स्ट्रिंग में प्रवेश किया था। 199 00:09:30,950 --> 00:09:32,840 हम चार के माध्यम से दो अनदेखी कर रहे हैं। 200 00:09:32,840 --> 00:09:33,610 ठीक। 201 00:09:33,610 --> 00:09:38,210 तो यहाँ पर now-- जब जब मैं पहली बार अनुरोध एस 1। 202 00:09:38,210 --> 00:09:39,740 तो अगर आप कंप्यूटर हैं। 203 00:09:39,740 --> 00:09:41,680 और अगर आप GetString लागू कर रहे हैं। 204 00:09:41,680 --> 00:09:46,710 तो अगर आप एक स्ट्रिंग से अनुरोध मुझे, और मैं, ठीक है, डीन का कहना है। 205 00:09:46,710 --> 00:09:47,900 स्ट्रिंग दे "डीन।" 206 00:09:47,900 --> 00:09:50,300 >> तो कहीं स्मृति में आप याद करने की जरूरत "डीन।" 207 00:09:50,300 --> 00:09:52,160 तो कहीं स्मृति में लिखें। 208 00:09:52,160 --> 00:09:58,270 209 00:09:58,270 --> 00:09:59,210 बिल्कुल सही। 210 00:09:59,210 --> 00:09:59,880 ठीक। 211 00:09:59,880 --> 00:10:01,740 तो अब हम S2 है। 212 00:10:01,740 --> 00:10:03,869 और S2 होने जा रहा है GetString के लिए एक अनुरोध। 213 00:10:03,869 --> 00:10:05,160 तो मैं एक स्ट्रिंग दर्ज करने के लिए जा रहा हूँ। 214 00:10:05,160 --> 00:10:08,720 मैं प्रवेश करने के लिए जा रहा हूँ "हन्ना।" 215 00:10:08,720 --> 00:10:10,586 तो कहीं स्मृति में "हन्ना" दर्ज करें। 216 00:10:10,586 --> 00:10:18,860 217 00:10:18,860 --> 00:10:19,360 हाँ। 218 00:10:19,360 --> 00:10:23,000 एक-एच। 219 00:10:23,000 --> 00:10:25,550 >> ठीक है, तो अब S3। 220 00:10:25,550 --> 00:10:28,380 और यह एक और होने जा रहा है GetString करने के लिए अनुरोध करते हैं। 221 00:10:28,380 --> 00:10:37,020 और तो अब "मारिया।" दर्ज 222 00:10:37,020 --> 00:10:37,520 ठीक है। 223 00:10:37,520 --> 00:10:40,980 और फिर एक आखिरी वहाँ GetString करने के लिए अनुरोध, S4। 224 00:10:40,980 --> 00:10:42,580 तो, मैं नहीं जानता। 225 00:10:42,580 --> 00:10:45,640 कैसे हम साथ जाने के बारे में antidisestablishmentarianism। 226 00:10:45,640 --> 00:10:49,460 तो स्मृति में है कि दर्ज करें। 227 00:10:49,460 --> 00:10:50,400 हाँ। 228 00:10:50,400 --> 00:10:53,970 तो बस "रोब।" करना 229 00:10:53,970 --> 00:10:54,560 >> ठीक। 230 00:10:54,560 --> 00:10:58,410 ऐसा क्यों किया तो अब explain-- आप इन स्थानों छोड़ दिया? 231 00:10:58,410 --> 00:11:01,340 आप इस खाली है क्यों यहाँ, यहाँ, और यहाँ तक अंतरिक्ष? 232 00:11:01,340 --> 00:11:05,170 233 00:11:05,170 --> 00:11:05,670 हाँ। 234 00:11:05,670 --> 00:11:09,450 मुझे जाना है तो जब नोटिस यदि ऐसा है तो s1-- मुद्रित करने के लिए हम 235 00:11:09,450 --> 00:11:11,890 था, "हन्ना" चल रहा है ठीक ऊपर अगले करने के लिए "डीन," 236 00:11:11,890 --> 00:11:14,360 हम जब पता चलेगा कि कैसे स्ट्रिंग "डीन" समाप्त हो जाती है? 237 00:11:14,360 --> 00:11:19,470 तो स्ट्रिंग एस 1 मुद्रण हो सकता है बस "DeanHannahMariaRob" मुद्रित 238 00:11:19,470 --> 00:11:22,720 यह कोई सुराग नहीं है "डीन" वास्तव में समाप्त होता है की जब। 239 00:11:22,720 --> 00:11:23,240 >> ठीक है। 240 00:11:23,240 --> 00:11:27,650 तो स्मृति में जिस तरह से हम वास्तव में एक स्ट्रिंग के इस अंत का प्रतिनिधित्व 241 00:11:27,650 --> 00:11:29,940 बैकस्लैश शून्य के साथ है। 242 00:11:29,940 --> 00:11:32,620 इसलिए इस जगह हम चाहते थे कि क्या वास्तव में है। 243 00:11:32,620 --> 00:11:34,040 यह एक बैकस्लैश शून्य होना चाहिए। 244 00:11:34,040 --> 00:11:37,690 यह एक बैकस्लैश शून्य हो जाएगा और यह एक बैकस्लैश शून्य हो जाएगा। 245 00:11:37,690 --> 00:11:41,585 और अगर आप एक शानदार पुरस्कार हो सकता है एक आदर्श स्वयंसेवक होने के लिए। 246 00:11:41,585 --> 00:11:44,910 247 00:11:44,910 --> 00:11:45,860 एक तनाव गेंद ले लो! 248 00:11:45,860 --> 00:11:49,040 249 00:11:49,040 --> 00:11:49,700 >> ठीक। 250 00:11:49,700 --> 00:11:54,420 इसलिए इस चरित्र बैकस्लैश शून्य है कैसे हम एक स्ट्रिंग के अंत का संकेत मिलता है। 251 00:11:54,420 --> 00:11:57,120 यह कैसे जब किसी भी कार्यक्रम है एक स्ट्रिंग मुद्रित करने के लिए चाहता है, 252 00:11:57,120 --> 00:11:59,760 हमने सीखा याद how-- यह है strlen समारोह पिछले सप्ताह? 253 00:11:59,760 --> 00:12:00,940 स्ट्रिंग लंबाई? 254 00:12:00,940 --> 00:12:03,770 यह स्ट्रिंग लंबाई करने में सक्षम है कि कैसे है एक स्ट्रिंग है कि कितने समय तक निर्धारित करते हैं। 255 00:12:03,770 --> 00:12:05,810 यह सिर्फ पुनरावृति रहता है अक्षरों से अधिक 256 00:12:05,810 --> 00:12:08,217 यह पाता है जब तक शून्य चरित्र Backslash। 257 00:12:08,217 --> 00:12:11,050 महत्वपूर्ण बात का एहसास करने के लिए तो बैकस्लैश शून्य चरित्र के बारे में 258 00:12:11,050 --> 00:12:14,950 यह प्रतिनिधित्व का है बिट्स में सभी शून्य से। 259 00:12:14,950 --> 00:12:18,980 तो यह अलग है कि नोटिस शून्य चरित्र से। 260 00:12:18,980 --> 00:12:23,010 तो शून्य चरित्र, अगर तुम्हें याद है उदाहरण में वह अंत में दे दिया है कि 261 00:12:23,010 --> 00:12:27,360 व्याख्यान के पात्रों को मैप जहां 65 को राजधानी के एक नक्शे की तरह है--। 262 00:12:27,360 --> 00:12:29,130 97 को एक नक्शे लोअरकेस। 263 00:12:29,130 --> 00:12:30,890 लोअरकेस ख 98 होगा। 264 00:12:30,890 --> 00:12:35,220 तो संख्या 0 नक्शे मैं नहीं है-- मेरे सिर के ऊपर से पता है। 265 00:12:35,220 --> 00:12:36,400 44 या 45। 266 00:12:36,400 --> 00:12:37,890 कहीं न कहीं उस क्षेत्र में। 267 00:12:37,890 --> 00:12:40,850 >> तो चरित्र 0 एक वास्तविक संख्या है। 268 00:12:40,850 --> 00:12:44,350 लेकिन बैकस्लैश शून्य सभी शून्य बिट्स के लिए नक्शे। 269 00:12:44,350 --> 00:12:46,380 तो एक अंतर है बैकस्लैश शून्य के बीच, 270 00:12:46,380 --> 00:12:48,450 जो हम अशक्त टर्मिनेटर फोन करता हूँ। 271 00:12:48,450 --> 00:12:53,210 एक अंतर के बीच नहीं है बैकस्लैश शून्य और चरित्र शून्य। 272 00:12:53,210 --> 00:12:54,350 >> ठीक है। 273 00:12:54,350 --> 00:12:57,520 तो तार के बारे में थोड़ा और अधिक बात कर। 274 00:12:57,520 --> 00:13:01,470 तो फिर हम यह कैसे है यहाँ देखें यह स्मृति में बाहर रखी जाएगी। 275 00:13:01,470 --> 00:13:07,940 तो एक दृश्य के रूप में तार के इस विचार characters-- की आधिकारिक कंप्यूटर इसलिए 276 00:13:07,940 --> 00:13:10,750 अनुक्रम के लिए sciency अवधि एक सरणी है। 277 00:13:10,750 --> 00:13:13,790 तो हम एक स्ट्रिंग फोन होगा पात्रों में से एक सरणी। 278 00:13:13,790 --> 00:13:17,770 और वास्तव में अन्य डेटा देखते हैं हम से बाहर सरणियों कर सकते हैं कि प्रकार के। 279 00:13:17,770 --> 00:13:19,975 >> इसलिए इस प्रेरित करने के लिए, एक उदाहरण देखो। 280 00:13:19,975 --> 00:13:22,810 281 00:13:22,810 --> 00:13:29,812 हम मैं हूँ ages0.c यह फोन करता हूँ कॉपी और हमारे टेम्पलेट पेस्ट करें। 282 00:13:29,812 --> 00:13:32,470 283 00:13:32,470 --> 00:13:33,410 ठीक। 284 00:13:33,410 --> 00:13:39,378 इस कार्यक्रम में तो क्या हम क्या करना चाहते उम्र हड़पने है 285 00:13:39,378 --> 00:13:45,160 पाठ्यक्रम में तीन छात्रों की। 286 00:13:45,160 --> 00:13:49,240 इसलिए हम जानते हैं कि पूर्णांक age-- और अब मैं 0 कहने जा रहा हूँ। 287 00:13:49,240 --> 00:13:53,140 तो अगर आप age1 कहना चाहते हैं, लेकिन हो सकता है प्रयोजनों के लिए हम बहुत जल्द ही देखेंगे, 288 00:13:53,140 --> 00:13:57,187 मैं पूर्णांक age0 GetInt के बराबर होती है कहूँगा। 289 00:13:57,187 --> 00:13:59,270 GetInt के लिए एक ही कॉल तो हम मैं का उपयोग किया गया है कि 290 00:13:59,270 --> 00:14:01,561 उत्साह होना होगा नहीं है "मुझे उम्र दे।" यह कहकर 291 00:14:01,561 --> 00:14:03,120 लेकिन सिर्फ यह अनुरोध करता है। 292 00:14:03,120 --> 00:14:06,510 >> और age1 GetInt बराबर होती है। 293 00:14:06,510 --> 00:14:09,600 और int age2 GetInt बराबर होती है। 294 00:14:09,600 --> 00:14:14,070 तो, फिर से, तीन छात्रों को, लेकिन अंततः चर सूचकांकों 295 00:14:14,070 --> 00:14:16,890 age2 के माध्यम से age0 हैं। 296 00:14:16,890 --> 00:14:17,550 ठीक। 297 00:14:17,550 --> 00:14:23,960 इसलिए इस कार्यक्रम करना होगा जो कुछ भी हम age0, age1, और age2 के साथ चाहते हैं, 298 00:14:23,960 --> 00:14:27,670 लेकिन इस कार्यक्रम अंततः तीन छात्रों के लिए काम करता है। 299 00:14:27,670 --> 00:14:28,380 >> ठीक। 300 00:14:28,380 --> 00:14:32,110 तो अब मैं चार छात्रों चाहते हैं, तो क्या? 301 00:14:32,110 --> 00:14:36,000 खैर, मैं वापस जाने के लिए जा रहा हूँ मेरे कोड में, इस टिप्पणी को बदलने, 302 00:14:36,000 --> 00:14:39,840 और अब हम एक पूर्णांक है age3 GetInt बराबर होती है। 303 00:14:39,840 --> 00:14:40,610 ठीक। 304 00:14:40,610 --> 00:14:43,660 तो जो यहाँ समस्या देखता है? 305 00:14:43,660 --> 00:14:47,310 समस्या क्या है स्थापना के इस प्रकार के साथ? 306 00:14:47,310 --> 00:14:47,810 हाँ। 307 00:14:47,810 --> 00:14:53,110 308 00:14:53,110 --> 00:14:53,610 हाँ। 309 00:14:53,610 --> 00:14:56,360 तो हम एक बना रहे हैं प्रत्येक छात्र के लिए चर। 310 00:14:56,360 --> 00:15:00,140 अब यह काम करता है, लेकिन अंतत: क्या अब मैं यदि 311 00:15:00,140 --> 00:15:06,500 मैं साल की उम्र हथियाना चाहते हैं कहते हैं, " आठ छात्रों या 16 छात्रों 312 00:15:06,500 --> 00:15:11,340 की या फिर भी कई छात्रों CS50 में छात्रों के सैकड़ों 313 00:15:11,340 --> 00:15:16,750 या परिसर में छात्रों के हजारों या दुनिया में लोगों के अरबों? 314 00:15:16,750 --> 00:15:19,130 तो अंततः यह स्थायी नहीं है। 315 00:15:19,130 --> 00:15:21,990 यदि आप अपने आप को कॉपी देख किसी भी समय और इस तरह चिपकाने कोड, 316 00:15:21,990 --> 00:15:25,050 आप आम तौर पर महसूस करना चाहिए वहाँ एक बेहतर तरीका है। 317 00:15:25,050 --> 00:15:31,290 >> हम परिचय तो यह है जहां एक सरणी घोषणा। 318 00:15:31,290 --> 00:15:34,564 तो अगर आप एक सरणी की घोषणा करते हैं, यह क्या सामान्य स्वरूप है 319 00:15:34,564 --> 00:15:35,480 की तरह लग रहा है। 320 00:15:35,480 --> 00:15:36,664 हम प्रकार कहने के लिए जा रहे हैं। 321 00:15:36,664 --> 00:15:38,830 और फिर हम करने जा रहे हैं उस सरणी का नाम देते हैं, 322 00:15:38,830 --> 00:15:41,150 अभी हम किसी भी चर को परिभाषित के रूप में। 323 00:15:41,150 --> 00:15:43,980 और फिर अंत में हम प्रयोग कर रहे हैं इस ब्रैकेट संकेतन फिर 324 00:15:43,980 --> 00:15:47,480 लेकिन एक अलग संदर्भ में कैसे हम पहले भी यह प्रयोग कर रहे थे। 325 00:15:47,480 --> 00:15:51,860 >> यहाँ तो यह एक सामान्य की तरह लग रहा है हमने देखा है कि चर घोषणा। 326 00:15:51,860 --> 00:15:54,890 इसलिए हम पहले int x सेमी कॉलन देखा है। 327 00:15:54,890 --> 00:16:00,020 खैर अब हम कुछ देख सकते हैं int x कोष्ठक 5 की तरह। 328 00:16:00,020 --> 00:16:04,020 और में इस विचार डाल हम have-- कि GetInt कार्यक्रम 329 00:16:04,020 --> 00:16:08,850 इसलिए हम लागू कर सकते हैं उसी तरह इस। 330 00:16:08,850 --> 00:16:13,630 >> हम उपयोग करते हैं सीएस में हम कहते हैं कुछ की संख्या के रूप में एन। 331 00:16:13,630 --> 00:16:16,150 यहाँ तो हम करने जा रहे हैं चार छात्रों की दुकान। 332 00:16:16,150 --> 00:16:25,960 और अब हम पूर्णांक उम्र कह सकते हैं ब्रैकेट काफी यह yet-- नहीं मिल N-- 333 00:16:25,960 --> 00:16:32,210 चार छात्रों की एक सरणी की घोषणा करने के लिए। 334 00:16:32,210 --> 00:16:38,050 तो इस में कैसे दिखेगा स्मृति इस के समान हो जाएगा। 335 00:16:38,050 --> 00:16:39,570 यह स्पष्ट। 336 00:16:39,570 --> 00:16:46,606 और हम कहीं जा रहे हैं memory-- में मैं वहाँ इस डाल देता हूँ। 337 00:16:46,606 --> 00:16:52,690 338 00:16:52,690 --> 00:16:53,808 >> तो कहीं स्मृति में। 339 00:16:53,808 --> 00:16:58,760 340 00:16:58,760 --> 00:16:59,727 एक दो तीन चार। 341 00:16:59,727 --> 00:17:03,383 342 00:17:03,383 --> 00:17:09,849 हम एक पंक्ति में चार पूर्णांक है चार पूर्णांक इस सरणी के लिए। 343 00:17:09,849 --> 00:17:13,820 तो, वर्तमान में, क्या है इन बक्सों में से एक का आकार? 344 00:17:13,820 --> 00:17:17,190 345 00:17:17,190 --> 00:17:17,690 हाँ। 346 00:17:17,690 --> 00:17:18,390 यह चार बाइट्स है। 347 00:17:18,390 --> 00:17:19,690 यह 32 बिट है। 348 00:17:19,690 --> 00:17:22,310 तो अब यह अलग है सरणी से है कि हम 349 00:17:22,310 --> 00:17:24,020 पात्रों में से पहले, सरणी देखा। 350 00:17:24,020 --> 00:17:28,540 एक स्ट्रिंग में प्रत्येक बॉक्स, केवल एक बाइट था एक चरित्र केवल एक बाइट है। 351 00:17:28,540 --> 00:17:32,170 लेकिन पूर्णांकों की एक सरणी के साथ, प्रत्येक बॉक्स क्रम में चार बाइट्स हो गया है 352 00:17:32,170 --> 00:17:34,060 एक पूरी पूर्णांक फिट करने के लिए। 353 00:17:34,060 --> 00:17:37,197 तो यह क्या है की एक सरणी चार ints की तरह लग रही होगी। 354 00:17:37,197 --> 00:17:40,510 355 00:17:40,510 --> 00:17:43,870 >> और फिर वापस करने के लिए कोड। 356 00:17:43,870 --> 00:17:47,460 अब हम वास्तव में संग्रहीत करना चाहते हैं उस सरणी में पूर्णांकों। 357 00:17:47,460 --> 00:17:53,470 तो अब यह एक बहुत, बहुत, बहुत है कुछ बिंदु पर होगा कि आम पैटर्न 358 00:17:53,470 --> 00:17:54,680 मांसपेशियों की स्मृति हो जाते हैं। 359 00:17:54,680 --> 00:17:56,710 तो मैं 0 के बराबर होती है int। 360 00:17:56,710 --> 00:17:57,940 मैं n से कम है। 361 00:17:57,940 --> 00:18:01,850 मैं प्लस प्लस। 362 00:18:01,850 --> 00:18:05,790 आयु वर्ग मैं GetInt बराबर होती है। 363 00:18:05,790 --> 00:18:15,100 >> तो इस लूप के लिए, इस प्रारूप, तुम बहुत करने के लिए इस्तेमाल किया जाना चाहिए। 364 00:18:15,100 --> 00:18:20,010 तो यह आम तौर पर है कि कैसे हम करेंगे लगभग किसी सरणी पर पुनरावृति। 365 00:18:20,010 --> 00:18:23,690 अब का इस तरह का नोटिस शुरू से ही बताते हैं कि क्यों 366 00:18:23,690 --> 00:18:29,870 हम छोरों पूर्णांक के लिए जाने के लिए नहीं था मैंने सोचा कि मैं कम से कम या 10 के बराबर, 1 के बराबर होती है। 367 00:18:29,870 --> 00:18:34,200 से शुरू है कि कारण किया जा रहा शून्य सरणियों के साथ अच्छी तरह से इस काम में आता है। 368 00:18:34,200 --> 00:18:36,270 तो सरणियों अनुक्रमित शून्य हैं। 369 00:18:36,270 --> 00:18:40,360 इस सरणी लंबाई 4 का है, सूचकांक 3 के माध्यम से 0 कर रहे हैं। 370 00:18:40,360 --> 00:18:42,880 >> पहले के माध्यम से तो पाश के लिए इस बात का चलना 371 00:18:42,880 --> 00:18:49,930 हम उम्र की स्थापना करने जा रहे हैं GetInt के लिए एक फोन के बराबर ब्रैकेट 0। 372 00:18:49,930 --> 00:18:52,440 इसलिए मैं जो कुछ भी हुआ कीबोर्ड पर दर्ज करने के लिए। 373 00:18:52,440 --> 00:18:56,970 दूसरा पास में, हम कर रहे हैं GetInt को age1 बराबर की स्थापना। 374 00:18:56,970 --> 00:18:58,230 तीसरा पास, age2। 375 00:18:58,230 --> 00:18:59,880 अंतिम पास age3। 376 00:18:59,880 --> 00:19:05,750 लूप के पहले पास में तो अगर मैं, कीबोर्ड पर 4 नंबर दर्ज 377 00:19:05,750 --> 00:19:07,740 तो हम यहाँ एक 4 डालने देंगे। 378 00:19:07,740 --> 00:19:11,470 मैं प्रवेश दूसरा पास पर हैं 50, हम यहां एक 50 डाल देता हूँ। 379 00:19:11,470 --> 00:19:15,180 तीसरे पास पर मैं हो सकता है दर्ज एक नकारात्मक, एक नकारात्मक, 380 00:19:15,180 --> 00:19:21,810 और फिर अंत में मैं 0-- प्रवेश अगर और अब इस सूचकांक तीन साल का था कि याद है। 381 00:19:21,810 --> 00:19:25,350 >> हम पाश वापस करने के बाद, मैं है जा रहा से 4 वृद्धि की जाए। 382 00:19:25,350 --> 00:19:27,770 मैं अब 4 है जो एन, की तुलना में कम है। 383 00:19:27,770 --> 00:19:29,840 और हम लूप के बाहर तोड़। 384 00:19:29,840 --> 00:19:32,578 तो इस के साथ क्या गलत हो सकता है? 385 00:19:32,578 --> 00:19:38,140 386 00:19:38,140 --> 00:19:38,729 [अश्राव्य]? 387 00:19:38,729 --> 00:19:39,604 दर्शकों: [अश्राव्य] 388 00:19:39,604 --> 00:19:45,880 389 00:19:45,880 --> 00:19:46,400 >> हाँ। 390 00:19:46,400 --> 00:19:51,550 तो सरणी केवल चार स्थानों पर है, जो 3 के माध्यम सूचकांकों 0 के रूप में इसका मतलब है। 391 00:19:51,550 --> 00:19:55,630 अगर इस मामले थे, मैं होता तो कुछ बिंदु पर मूल्य 4 पर ले लो। 392 00:19:55,630 --> 00:20:00,910 आयु वर्ग 4 की स्थापना की जाएगी जो कुछ भी यहाँ पर होना होता है 393 00:20:00,910 --> 00:20:02,920 मैं क्या कहना चाहता है के लिए, 6 दर्ज करें। 394 00:20:02,920 --> 00:20:05,010 यही कारण है कि 6 को यह स्थापित करने होंगे। 395 00:20:05,010 --> 00:20:06,560 >> लेकिन हम यहाँ पर क्या है पता नहीं है। 396 00:20:06,560 --> 00:20:08,836 इस स्मृति नहीं है कि हम का उपयोग करने के लिए किया था। 397 00:20:08,836 --> 00:20:10,710 तो तुम से याद है पिछले व्याख्यान, 398 00:20:10,710 --> 00:20:14,350 वह Zamyla के मूल्यों बाहर मुद्रण किया गया था और कुछ बिंदु पर वह इस विभाजन को मारा 399 00:20:14,350 --> 00:20:17,990 गलती। तो आप शायद देखकर किया जाएगा आप के रूप में कई विभाजन के दोष 400 00:20:17,990 --> 00:20:20,530 समस्या सेट में से कुछ को लागू करने। 401 00:20:20,530 --> 00:20:24,950 लेकिन इस तरीके से एक है जिसमें आप एक विभाजन का सामना कर सकते हैं 402 00:20:24,950 --> 00:20:28,540 आप तक पहुँचने शुरू करते हैं, तो गलती तुम नहीं होना चाहिए कि मायनों में स्मृति। 403 00:20:28,540 --> 00:20:34,117 तो हम करने के लिए उपयोग नहीं किया इस स्थान है और यह एक बग है। 404 00:20:34,117 --> 00:20:37,760 405 00:20:37,760 --> 00:20:40,190 >> तो यह बेहतर है। 406 00:20:40,190 --> 00:20:45,820 अब अभी भी एक छोटा सा नहीं है इस कोड के साथ इस मुद्दे। 407 00:20:45,820 --> 00:20:50,720 और कहा कि हम कर रहे हैं कि मूल रूप से है अभी भी चार छात्रों पर अटक गया। 408 00:20:50,720 --> 00:20:52,940 अब मैं ठीक है, आठ छात्रों उपयोग करना चाहते हैं। 409 00:20:52,940 --> 00:20:54,350 यह है कि एक बड़ा सौदा नहीं है। 410 00:20:54,350 --> 00:20:58,120 मैं बदलने में जा सकते हैं टिप्पणी, और एन बदल जाते हैं। 411 00:20:58,120 --> 00:20:59,760 अब इस आठ छात्रों के साथ काम करेंगे। 412 00:20:59,760 --> 00:21:02,190 मैं इस संकलन और चलाते हैं यही नहीं, यह me-- दिखाएगा 413 00:21:02,190 --> 00:21:07,870 यह आठ विकेट पर पूर्णांकों का अनुरोध करेंगे छात्रों और यह सिर्फ काम करेंगे। 414 00:21:07,870 --> 00:21:11,850 लेकिन यह करने की जरूरत के लिए आदर्श से कम नहीं है कार्यक्रम हर एक बार फिर कंपाइल 415 00:21:11,850 --> 00:21:15,960 मैं छात्रों की संख्या को बदलना चाहते हैं मैं के लिए उम्र में प्रवेश करना चाहते हैं। 416 00:21:15,960 --> 00:21:22,990 >> तो अंतिम सुधार पर हम here-- देखेंगे के रूप में यह है, हम कर रहे हैं 417 00:21:22,990 --> 00:21:26,177 लोगों की संख्या का अनुरोध करने जा रही है। 418 00:21:26,177 --> 00:21:28,010 यहाँ हम एक संख्या है कमरे में लोगों की 419 00:21:28,010 --> 00:21:29,880 या कमरे में लोगों की किसी भी उम्र के। 420 00:21:29,880 --> 00:21:33,300 लेकिन हम नंबर का अनुरोध करने के लिए जा रहे हैं उपयोगकर्ता से कमरे में लोगों की। 421 00:21:33,300 --> 00:21:36,171 तो यह ठीक उसी मत करो हालांकि है हम पहले देखा है कि पाश। 422 00:21:36,171 --> 00:21:37,920 यह सही ही है मत करो हालांकि पाश कि आप 423 00:21:37,920 --> 00:21:40,050 समस्या सेट पर लागू किया जा सकता। 424 00:21:40,050 --> 00:21:43,102 तो जब तक वे कर रहे हैं के रूप में 1 से एक एन कम में प्रवेश, 425 00:21:43,102 --> 00:21:45,310 इतने में वहाँ के लिए मिल गया है कमरे में कम से कम एक व्यक्ति। 426 00:21:45,310 --> 00:21:47,407 जब तक वे कर रहे हैं के रूप में 1 से एक एन कम में प्रवेश, 427 00:21:47,407 --> 00:21:48,990 उसके बाद हम फिर से पूछ रखने के लिए जा रहे हैं। 428 00:21:48,990 --> 00:21:50,906 संख्या दर्ज करें कमरे में लोगों की। 429 00:21:50,906 --> 00:21:53,550 अब, एक बार हम नंबर है room-- में लोगों की 430 00:21:53,550 --> 00:21:58,020 इसलिए मुझे लगता है कि वहाँ से प्रवेश कर सकता है इस कमरे में 200 लोग हैं। 431 00:21:58,020 --> 00:22:05,480 यहाँ तो नीचे हम आने के लिए जा रहे हैं और आकार 200 की एक सरणी की घोषणा। 432 00:22:05,480 --> 00:22:10,220 हम है कि सरणी की घोषणा कर रहे हैं बहुत बड़ा 200 उम्र धारण करने के लिए। 433 00:22:10,220 --> 00:22:15,370 नीचे आ रहा है, यह पाश के लिए है तुम बहुत करने के लिए इस्तेमाल किया हो जाएगा। 434 00:22:15,370 --> 00:22:19,490 तो इस सरणी पर iterating, प्रत्येक स्थान के लिए बताए 435 00:22:19,490 --> 00:22:23,020 उस सरणी में एक पूर्णांक, और फिर अंत में यहाँ हम कर रहे हैं 436 00:22:23,020 --> 00:22:28,340 सिर्फ पुनरावृति का एक उदाहरण हो रही है कि सरणी पर, मूल्यों आवंटित करने के लिए नहीं, 437 00:22:28,340 --> 00:22:30,150 लेकिन मूल्यों का उपयोग करने के लिए। 438 00:22:30,150 --> 00:22:33,810 >> यहाँ पर तो हम देखते हैं कि हम उस अब से एक साल, कह रहे हैं, 439 00:22:33,810 --> 00:22:40,470 व्यक्ति% मैं, मैं साल पुराने% हो जाएगा पहली% मैं मैं प्लस 1 है जहां। 440 00:22:40,470 --> 00:22:43,010 इसलिए मैं इस सूचकांक चर रहा है। 441 00:22:43,010 --> 00:22:49,420 और दूसरा% मैं होने जा रहा है उम्र सरणी प्लस 1 में संग्रहीत मूल्य। 442 00:22:49,420 --> 00:22:54,217 इसलिए इस प्लस 1 हम कर रहे हैं, सिर्फ इसलिए है , इस प्लस 1 saying-- उम्र मैं प्लस 1। 443 00:22:54,217 --> 00:22:57,050 इस प्लस 1 हम कर रहे हैं, सिर्फ इसलिए है अब व्यक्ति से एक साल, कह रही 444 00:22:57,050 --> 00:22:58,280 इस पुराने हो जाएगा। 445 00:22:58,280 --> 00:23:01,080 >> तो क्यों यह मैं प्लस 1 है? 446 00:23:01,080 --> 00:23:04,064 क्यों हम वहाँ एक प्लस 1 है? 447 00:23:04,064 --> 00:23:04,564 हाँ। 448 00:23:04,564 --> 00:23:07,410 449 00:23:07,410 --> 00:23:07,930 हाँ। 450 00:23:07,930 --> 00:23:10,510 तो सरणियों शून्य अनुक्रमित रहे हैं याद है। 451 00:23:10,510 --> 00:23:14,840 हम के लिए इस बाहर मुद्रण कर रहे हैं तो अगर किसी को सिर्फ उत्पादन को पढ़ने के लिए, 452 00:23:14,840 --> 00:23:19,380 तो शायद वे कुछ देखना चाहते हैं व्यक्ति एक, व्यक्ति नंबर एक की तरह, 453 00:23:19,380 --> 00:23:21,160 20 साल का हो जाएगा। 454 00:23:21,160 --> 00:23:23,570 व्यक्ति के नंबर दो 15 साल का हो जाएगा। 455 00:23:23,570 --> 00:23:27,420 बल्कि वे व्यक्ति नहीं देखना चाहते हैं संख्या शून्य से 15 साल पुराना है। 456 00:23:27,420 --> 00:23:36,460 >> तो यह संकलन और बस को देखकर क्या यह कुछ जगह बनाएं like-- लग रहा है। 457 00:23:36,460 --> 00:23:43,560 उम्र compiles बनाओ। 458 00:23:43,560 --> 00:23:45,080 उम्र के चल रहा है। 459 00:23:45,080 --> 00:23:46,580 हम कमरे में लोगों की संख्या को देखते हैं। 460 00:23:46,580 --> 00:23:48,850 इसलिए मैं देखते हैं कहूँगा कमरे में तीन लोग हैं। 461 00:23:48,850 --> 00:23:54,000 व्यक्ति के नंबर एक की उम्र, 15, 20, 25 कहते हैं। 462 00:23:54,000 --> 00:23:59,680 और अब मैं एक साल से कह देंगे अब वे 16, 21, 26 हो जाएगा। 463 00:23:59,680 --> 00:24:02,900 इस के साथ काम करता है कि चलो देखते हैं 3 के बराबर नहीं है कि एक एन। 464 00:24:02,900 --> 00:24:07,940 तो अगर मैं लोगों की संख्या, एक 5 का कहना है कि दो, तीन, दो, एक, अब से एक साल 465 00:24:07,940 --> 00:24:11,170 वे, दो, तीन हो जाएगा चार, तीन, दो साल पुराना है। 466 00:24:11,170 --> 00:24:16,500 तो मैं बस के रूप में कर सकता है आसानी से n 10,000 हो गए हैं। 467 00:24:16,500 --> 00:24:21,270 अब मैं काफी के लिए यहां बैठे हो जाएगा थोड़ी देर के उम्र में प्रवेश करने के लिए, लेकिन यह काम करता है। 468 00:24:21,270 --> 00:24:26,000 >> तो अब स्मृति में कहीं न कहीं हम , आकार 10,000 की एक सरणी है 469 00:24:26,000 --> 00:24:28,830 इसलिए अंतत: 40,000 बाइट्स, क्योंकि वहाँ रहे हैं 470 00:24:28,830 --> 00:24:31,222 उन पूर्णांकों से प्रत्येक के लिए चार बाइट्स। 471 00:24:31,222 --> 00:24:33,180 तो की एक सरणी है आकार 10,000 जहां हम कर सकते हैं 472 00:24:33,180 --> 00:24:36,201 उन 10,000 लोगों की उम्र की दुकान। 473 00:24:36,201 --> 00:24:36,700 ठीक है। 474 00:24:36,700 --> 00:24:40,070 इस में से किसी के बारे में प्रश्न? 475 00:24:40,070 --> 00:24:41,892 हाँ। 476 00:24:41,892 --> 00:24:43,350 क्या आप एक नकारात्मक नंबर दे दिया तो क्या होगा? 477 00:24:43,350 --> 00:24:44,870 चलिए देखते हैं क्या होता है। 478 00:24:44,870 --> 00:24:49,320 इस विशेष case-- संख्या में तो कमरे, नकारात्मक एक में लोगों की। 479 00:24:49,320 --> 00:24:52,580 ऐसा लगता है कि खारिज कर दिया, यहां तक ​​कि हम भी हो, क्योंकि 480 00:24:52,580 --> 00:24:57,180 n है, तो यह तथ्य है कि संभाल करने के लिए कम से कम एक हम फिर से पूछने के लिए जा रहे हैं। 481 00:24:57,180 --> 00:25:01,780 आप एक घोषित करने की कोशिश करते हैं नकारात्मक आकार की सरणी, 482 00:25:01,780 --> 00:25:03,950 यह आम तौर पर काम नहीं करता। 483 00:25:03,950 --> 00:25:05,570 >> तो चलो कोशिश करते हैं। 484 00:25:05,570 --> 00:25:08,000 की उपेक्षा करते हैं जो कुछ भी n के लिए मूल्य वे इनपुट 485 00:25:08,000 --> 00:25:10,571 और सिर्फ पूर्णांक उम्र नकारात्मक एक कहते हैं। 486 00:25:10,571 --> 00:25:12,410 यह भी संकलित करता है, तो चलो देखते हैं। 487 00:25:12,410 --> 00:25:14,100 मुझे यकीन नहीं है। 488 00:25:14,100 --> 00:25:14,920 नहीं। 489 00:25:14,920 --> 00:25:18,280 इसलिए उम्र के एक के रूप में घोषित किया जाता है एक नकारात्मक आकार के साथ सरणी। 490 00:25:18,280 --> 00:25:22,540 इसलिए अग्रिम यह एक सरणी नहीं कर सकते पहचानता है नकारात्मक आकार का हो सकता है और इसे खारिज कर दिया। 491 00:25:22,540 --> 00:25:26,840 अब, हम संभाल नहीं था, तो इस मत करो हालांकि पाश सही ढंग से, 492 00:25:26,840 --> 00:25:28,810 हम जाँच नहीं कर रहे थे, तो एन कम से कम 1-- है यदि 493 00:25:28,810 --> 00:25:32,690 हम बस कहना है पर यह सब नहीं था 494 00:25:32,690 --> 00:25:35,940 और इसके बजाय हम सिर्फ एक पूर्णांक हासिल किया है। 495 00:25:35,940 --> 00:25:40,710 कोई फर्क नहीं पड़ता कि पूर्णांक क्या है, हम उस आकार की एक सरणी की घोषणा। 496 00:25:40,710 --> 00:25:44,250 >> तो संकलक नहीं कर सकते संभवतः अब शिकायत करते हैं। 497 00:25:44,250 --> 00:25:48,780 मैं है- संकलन इसलिए यह शिकायत नहीं कर सकता, 498 00:25:48,780 --> 00:25:51,480 यह मैं कर रहा हूँ कि पता नहीं कर सकते क्योंकि एक नकारात्मक नंबर दर्ज करने के लिए जा रहा है, 499 00:25:51,480 --> 00:25:52,550 जो अमान्य हो सकता है। 500 00:25:52,550 --> 00:25:54,633 यह सभी के लिए मैं सकता है, जानता है एक सकारात्मक संख्या दर्ज करें, 501 00:25:54,633 --> 00:25:56,000 जो पूरी तरह से वैध है। 502 00:25:56,000 --> 00:26:01,090 मैं एक नकारात्मक दर्ज तो अगर मैं कल्पना कमरे में लोगों, गलती विभाजन। 503 00:26:01,090 --> 00:26:06,040 >> तो ठीक है। 504 00:26:06,040 --> 00:26:13,160 तो चलो इस बस वापस जोड़ दें यह मूल रूप से क्या था इसे रख लो। 505 00:26:13,160 --> 00:26:15,640 इसलिए उम्र के हैं। 506 00:26:15,640 --> 00:26:18,120 अब मैं एक कोशिश करना चाहते हैं नकारात्मक तो चलो age-- 507 00:26:18,120 --> 00:26:19,710 कमरे में पांच लोग कर रहे हैं कहते हैं। 508 00:26:19,710 --> 00:26:23,180 व्यक्ति के नंबर एक की उम्र , व्यक्ति तीन नकारात्मक 4 509 00:26:23,180 --> 00:26:26,500 शून्य, व्यक्ति ठीक three-- है। 510 00:26:26,500 --> 00:26:29,850 यहाँ तो एक साल अब से, व्यक्ति नंबर एक 3 साल की उम्र नकारात्मक हो जाएगा। 511 00:26:29,850 --> 00:26:32,830 तो शायद समझ नहीं पड़ता है। 512 00:26:32,830 --> 00:26:37,220 लेकिन वह सिर्फ लग रही है क्योंकि कोड पर सब हम कर रहे हैं 513 00:26:37,220 --> 00:26:40,260 GetInt अनुरोध किया है। 514 00:26:40,260 --> 00:26:44,110 >> अब, हम कर दिया था कि अगर GetPositiveInt समारोह 515 00:26:44,110 --> 00:26:49,690 या हम सिर्फ और सिर्फ इस किया था वहाँ नीचे एक ही समय पाश की तरह, 516 00:26:49,690 --> 00:26:52,340 तो यह पूरी तरह से ठीक से काम करेगा। 517 00:26:52,340 --> 00:26:54,200 लेकिन इस विशेष में मामला है, हम अभी नहीं है 518 00:26:54,200 --> 00:26:57,772 नकारात्मक मूल्यों से निपटने होना होता है। 519 00:26:57,772 --> 00:26:59,147 सरणियों के बारे में कोई अन्य प्रश्न? 520 00:26:59,147 --> 00:27:02,290 521 00:27:02,290 --> 00:27:03,250 ठीक। 522 00:27:03,250 --> 00:27:09,380 >> तो क्या अब हम सरणियों देखा है। 523 00:27:09,380 --> 00:27:12,500 और हम का उपयोग करने की आवश्यकता के लिए जा रहे हैं कमांड लाइन तर्क के लिए यह। 524 00:27:12,500 --> 00:27:14,680 तो समस्या में two-- सेट मैं आप में से कई जानते हैं 525 00:27:14,680 --> 00:27:18,040 अभी भी समस्या सेट पर काम किया जा सकता है एक है, लेकिन समस्या दो आ रहा है निर्धारित किया है। 526 00:27:18,040 --> 00:27:22,260 समस्या दो सेट में, आप करने जा रहे हैं तार, सरणियों के साथ निपटने की जरूरत है, 527 00:27:22,260 --> 00:27:23,950 और कमांड लाइन तर्क। 528 00:27:23,950 --> 00:27:26,270 >> कमांड लाइन तर्क क्या हैं? 529 00:27:26,270 --> 00:27:29,570 अब, आप यहाँ एक नीचे देख सकते हैं है कि क्या वास्तव में के लिए थोड़ा टीज़र 530 00:27:29,570 --> 00:27:30,950 जा रहा हो रहा हो। 531 00:27:30,950 --> 00:27:32,950 हम int मुख्य, कांग्रेस argc देखना स्ट्रिंग argv कोष्ठक। 532 00:27:32,950 --> 00:27:34,560 533 00:27:34,560 --> 00:27:38,130 तो पहले की व्याख्या करने के लिए कोशिश करते हैं क्या कहना है कि कोशिश कर रहा है। 534 00:27:38,130 --> 00:27:40,800 अब ठीक। 535 00:27:40,800 --> 00:27:44,637 >> तो कमांड लाइन पर आप होना चाहिए इन आदेशों से कुछ के लिए इस्तेमाल हो रही है 536 00:27:44,637 --> 00:27:48,580 अब, और आप शायद भाग लिया पहले टर्मिनल में सीडी। 537 00:27:48,580 --> 00:27:52,100 तो हम सीडी pset1 कहते हैं, आपको लगता है कि पता होना चाहिए कि 538 00:27:52,100 --> 00:27:55,050 pset1 निर्देशिका में बदल जाएगा। 539 00:27:55,050 --> 00:27:59,120 >> अब आप कभी नहीं किया है कि नोटिस इस तरह से पहले एक कार्यक्रम में लिखा। 540 00:27:59,120 --> 00:28:03,120 आप लिखा है कि प्रत्येक कार्यक्रम आप कहते हैं, चला जाएगा मारियो स्लेश डॉट, 541 00:28:03,120 --> 00:28:06,779 डॉट लालची स्लेश, और फिर इसे इनपुट के लिए संकेत हो सकता है। 542 00:28:06,779 --> 00:28:08,570 अब, कि क्या नहीं है परिवर्तन निर्देशिका करता है। 543 00:28:08,570 --> 00:28:12,770 आप सीडी चलाते हैं, यह तो नहीं कहना है आप सीडी के लिए जो निर्देशिका में करना चाहते हैं? 544 00:28:12,770 --> 00:28:17,200 इसके बजाय, आप बस कहना है, सीडी pset1, और यह सिर्फ pset1 निर्देशिका में चला जाता है। 545 00:28:17,200 --> 00:28:20,430 >> तो इसी तरह से हम अन्य उदाहरण है। 546 00:28:20,430 --> 00:28:21,540 नमस्कार करते हैं। 547 00:28:21,540 --> 00:28:25,760 आप कर चलाते हैं, यह तो नहीं कहना है कार्यक्रम के लिए जो आप करना चाहते हैं? 548 00:28:25,760 --> 00:28:29,620 तुम बस में कहते हैं, कमांड लाइन नमस्कार करते हैं। 549 00:28:29,620 --> 00:28:31,060 >> हटो एक और उदाहरण है। 550 00:28:31,060 --> 00:28:34,840 हम आगे बढ़ रहे हैं यह एक एक निर्देशिका फाइल mario.c। 551 00:28:34,840 --> 00:28:38,060 तो अब हम इस उदाहरण के साथ पता हम वास्तव में दो तर्क गुजर रहे हैं। 552 00:28:38,060 --> 00:28:42,090 पहले तर्क के रूप mario.c है, और डॉट डॉट दूसरा तर्क है। 553 00:28:42,090 --> 00:28:46,140 और फिर आप कर चला करते हैं कि वास्तव में लंबे समय कमांड देखना line-- 554 00:28:46,140 --> 00:28:50,580 कि वास्तव में लंबे समय कमान कमांड लाइन पर छपी। 555 00:28:50,580 --> 00:28:53,590 तो यह है कि लंबे समय से इस command-- यह सिर्फ एक छोटा हिस्सा है, 556 00:28:53,590 --> 00:28:56,090 लेकिन अब हम तीन हैं कमांड लाइन तर्क। 557 00:28:56,090 --> 00:28:59,750 डॉट पानी का छींटा शून्य, नमस्कार, और hello.c। 558 00:28:59,750 --> 00:29:03,497 >> इसलिए इन कमांड-लाइन कर रहे हैं तर्क, तर्क 559 00:29:03,497 --> 00:29:05,580 आप कम से गुजर रहे हैं कि कमांड लाइन इतनी है कि यह 560 00:29:05,580 --> 00:29:08,680 संकेत करने के लिए जरूरी नहीं है आप इस कार्यक्रम को चला रहे हैं। 561 00:29:08,680 --> 00:29:13,090 यह निराशा होगी यदि जब आप बजना भागा यह ठीक कहा, " 562 00:29:13,090 --> 00:29:15,630 program-- जो जो फ़ाइल आप संकलन कर रहे हैं? 563 00:29:15,630 --> 00:29:17,010 Hello.c। 564 00:29:17,010 --> 00:29:19,440 क्या झंडे तुम होगा प्रवेश करने के लिए पसंद है? पानी का छींटा ओ। 565 00:29:19,440 --> 00:29:21,190 आप क्या पसंद करेंगे फ़ाइल कहा जा सकता है? 566 00:29:21,190 --> 00:29:21,690 नमस्ते। 567 00:29:21,690 --> 00:29:25,290 नहीं, तुम सिर्फ बजना चलाने ओ हैलो hello.c पानी का छींटा। 568 00:29:25,290 --> 00:29:28,820 >> तो वापस इस पर देख रहे हैं। 569 00:29:28,820 --> 00:29:32,920 अब argc-- argc तर्क गिना जाता है। 570 00:29:32,920 --> 00:29:36,620 यह कमांड लाइन का नंबर है तर्क कमांड लाइन पर प्रवेश किया। 571 00:29:36,620 --> 00:29:39,720 वैसे, तकनीकी argv-- वी, वेक्टर के लिए खड़ा है 572 00:29:39,720 --> 00:29:41,460 जो मूल रूप से सरणी इसका मतलब है। 573 00:29:41,460 --> 00:29:42,680 लेकिन आपको लगता है कि उपेक्षा कर सकते हैं। 574 00:29:42,680 --> 00:29:47,540 Argv-- हम, स्ट्रिंग argv है इसलिए स्ट्रिंग argv कोष्ठक। 575 00:29:47,540 --> 00:29:50,150 तो इस का दूसरा रूप है आप पहले नहीं देखा है कोष्ठक। 576 00:29:50,150 --> 00:29:52,300 तो हमने देखा है ब्रैकेट हमने कहा है कि जब संकेतन, 577 00:29:52,300 --> 00:29:53,970 जैसे, स्ट्रिंग एस Zamyla बराबर होती है। 578 00:29:53,970 --> 00:29:56,910 ब्रैकेट 0 चरित्र जेड तक पहुँचता है 579 00:29:56,910 --> 00:30:00,720 >> हम यह भी कोष्ठक जब देखा है हम int उम्र 5 ब्रैकेट कहा। 580 00:30:00,720 --> 00:30:03,160 यही कारण है कि आकार 5 की एक सरणी की घोषणा की। 581 00:30:03,160 --> 00:30:06,280 तो यहाँ का एक संस्करण है कोष्ठक हम पहले नहीं देखा है। 582 00:30:06,280 --> 00:30:09,630 स्ट्रिंग argv की तो इस तरह की है कि पूरी तरह से परिचित हो जाएगा 583 00:30:09,630 --> 00:30:12,050 यह सिर्फ एक स्ट्रिंग होगा। 584 00:30:12,050 --> 00:30:14,520 अब कोष्ठक का संकेत कि यह एक सरणी है। 585 00:30:14,520 --> 00:30:19,920 तो स्ट्रिंग argv कोष्ठक साधन कि argv तारों की एक सरणी है। 586 00:30:19,920 --> 00:30:22,540 अब तकनीकी रूप से एक स्ट्रिंग पात्रों में से एक सरणी है। 587 00:30:22,540 --> 00:30:26,400 तो यह अब एक सरणी है पात्रों में से एक सरणी की। 588 00:30:26,400 --> 00:30:31,490 लेकिन इसके बारे में सोचने के लिए बहुत आसान है तार के इस रूप में सिर्फ एक सरणी। 589 00:30:31,490 --> 00:30:34,900 >> तो क्यों कोष्ठक खाली हो सकता है? 590 00:30:34,900 --> 00:30:38,170 की तरह, क्यों हम यह नहीं कह सकते ब्रैकेट 5, ब्रैकेट N? 591 00:30:38,170 --> 00:30:40,700 592 00:30:40,700 --> 00:30:41,200 हाँ। 593 00:30:41,200 --> 00:30:43,731 594 00:30:43,731 --> 00:30:44,230 हाँ। 595 00:30:44,230 --> 00:30:46,396 हम कितने पता नहीं है आदानों वहाँ होने जा रहे हैं। 596 00:30:46,396 --> 00:30:53,560 इसलिए हम बजना उदाहरण पर नजर डालें तो, हम नमस्कार hello.c ओ पानी का छींटा बजना कहना। 597 00:30:53,560 --> 00:30:56,710 इस विशेष मामले में, वहाँ हो तीन कमांड लाइन तर्क हो। 598 00:30:56,710 --> 00:31:00,522 और तो brackets-- हम देखेंगे एक सेकंड में यह तीन नहीं होगा। 599 00:31:00,522 --> 00:31:01,730 यह तकनीकी रूप से चार होगा। 600 00:31:01,730 --> 00:31:04,030 लेकिन कोष्ठक, हम करेंगे कहते हैं, वहाँ तीन हैं। 601 00:31:04,030 --> 00:31:08,220 लेकिन अब हम इस कदम को देखा, तो mario.c डॉट डॉट, कोष्ठक 602 00:31:08,220 --> 00:31:09,760 हम उन में दो डाल करना चाहते हैं। 603 00:31:09,760 --> 00:31:12,884 >> और आदेशों का एक बहुत देखते हैं कि कमांड लाइन का एक चर संख्या है 604 00:31:12,884 --> 00:31:13,620 तर्क। 605 00:31:13,620 --> 00:31:17,430 तो क्या हुआ के इस संस्करण ब्रैकेट संकेतन इंगित करता है 606 00:31:17,430 --> 00:31:20,820 argv तारों की एक सरणी है। 607 00:31:20,820 --> 00:31:24,360 लेकिन हम कितने पता नहीं है तार कि सरणी में हैं। 608 00:31:24,360 --> 00:31:27,090 और कैसे हम तो जानते हैं कि कैसे कई तार सरणी में कर रहे हैं? 609 00:31:27,090 --> 00:31:28,870 यह पूरी बात argc है। 610 00:31:28,870 --> 00:31:32,300 argc argv है कितनी देर तक हमें बताता है। 611 00:31:32,300 --> 00:31:36,500 >> इसलिए पिछले बात में रखने के लिए मन, कि तकनीकी रूप से है 612 00:31:36,500 --> 00:31:40,820 आदेश में ही एक के रूप में गिना जाता है कमांड लाइन तर्क की। 613 00:31:40,820 --> 00:31:45,330 सीडी pset1 तो, वहाँ दो हैं कमांड लाइन तर्क। 614 00:31:45,330 --> 00:31:50,260 अपने आप में कार्यक्रम, सीडी, और उसके बाद इसके बारे में वास्तविक तर्क हिस्सा है, pset1। 615 00:31:50,260 --> 00:31:54,490 आप इस प्रकार अब तक लिखा है कि किसी भी कार्यक्रम एक कमांड लाइन argument-- डॉट पड़ा है 616 00:31:54,490 --> 00:31:55,320 मारियो स्लेश। 617 00:31:55,320 --> 00:31:57,350 यही कारण है कि केवल कमांड लाइन तर्क है। 618 00:31:57,350 --> 00:32:00,900 >> तो अब बजना पर देख रहे हैं ओ हैलो hello.c पानी का छींटा। 619 00:32:00,900 --> 00:32:01,905 तो argc क्या है? 620 00:32:01,905 --> 00:32:05,260 621 00:32:05,260 --> 00:32:06,080 4। 622 00:32:06,080 --> 00:32:08,140 तो argc 4 है। 623 00:32:08,140 --> 00:32:12,140 बजना, इसलिए argv ब्रैकेट 0 बजना है। 624 00:32:12,140 --> 00:32:15,630 argv ब्रैकेट 1 डैश 0 है। 625 00:32:15,630 --> 00:32:21,870 argv ब्रैकेट 2 नमस्कार है, और argv ब्रैकेट 3 hello.c है। 626 00:32:21,870 --> 00:32:26,813 ठीक है, तो इस पर सवाल, और फिर हम करेंगे कुछ कार्यक्रम संबंधी उदाहरण देखो। 627 00:32:26,813 --> 00:32:29,460 628 00:32:29,460 --> 00:32:30,480 >> ठीक। 629 00:32:30,480 --> 00:32:36,260 इसलिए हम hello3.c पर एक नज़र रखेंगे। 630 00:32:36,260 --> 00:32:41,890 तो क्या इस से परिचित होना चाहिए पहली सी उदाहरणों में से एक 631 00:32:41,890 --> 00:32:45,800 हम सिर्फ इतना कहना होता है, जहां हम हैलो था, दुनिया है, लेकिन अब यह अधिक सामान्य है। 632 00:32:45,800 --> 00:32:52,300 यहाँ तो हम नमस्ते कह रहे हैं % S के बैकस्लैश एन argv ब्रैकेट 1। 633 00:32:52,300 --> 00:32:57,440 इस बिंदु तक इतनी Notice--, यह है क्या मेरे टेम्पलेट फ़ाइल की तरह देखा गया है। 634 00:32:57,440 --> 00:33:01,800 मैं int मुख्य (शून्य) था, और फिर मैं होता मुख्य समारोह में कुछ करना है। 635 00:33:01,800 --> 00:33:05,100 अब इसके बजाय, एक बार हम काम शुरू कमांड लाइन तर्क के साथ, 636 00:33:05,100 --> 00:33:07,890 हम एक राज्य की जरूरत है मुख्य का अलग रूप। 637 00:33:07,890 --> 00:33:11,930 >> तो hello3 पर देख रहे हैं फिर, मुख्य जा रहा है 638 00:33:11,930 --> 00:33:15,990 int argc now-- दो तर्क लेने के लिए, कमांड लाइन तर्क की संख्या, 639 00:33:15,990 --> 00:33:20,970 और स्ट्रिंग कोष्ठक argv, वास्तविक तार कमांड लाइन पर प्रवेश किया। 640 00:33:20,970 --> 00:33:26,560 इसलिए मुझे लगता है कि बदलने के लिए जा रहा हूँ टेम्पलेट है कि इस तथ्य को प्रतिबिंबित करने के लिए। 641 00:33:26,560 --> 00:33:29,060 अब जब भी आप लिखना एक कार्यक्रम है, अगर तुम नहीं करते 642 00:33:29,060 --> 00:33:33,720 किसी भी कमांड लाइन लेने की जरूरत तर्क है, तो बस int मुख्य (शून्य) का उपयोग करें। 643 00:33:33,720 --> 00:33:37,070 लेकिन अब आप लिख रहे हैं जब कमांड लाइन तर्क कार्यक्रम, जो 644 00:33:37,070 --> 00:33:40,350 आप समस्या के लिए कर रही हो जा रहे हैं तो अब आप चल रहे हैं कि two-- सेट 645 00:33:40,350 --> 00:33:42,630 लेने की जरूरत है कि कार्यक्रमों कमांड लाइन तर्क, 646 00:33:42,630 --> 00:33:45,250 आप इस फार्म की मुख्य जरूरत है। 647 00:33:45,250 --> 00:33:51,290 >> तो here-- इस बड़ी उपयोग होता है कमांड लाइन तर्क की। 648 00:33:51,290 --> 00:33:54,100 तो argv 1 मुद्रण। 649 00:33:54,100 --> 00:33:59,180 ठीक है तो के संकलन करते और इस कार्यक्रम चलाते हैं। 650 00:33:59,180 --> 00:34:02,440 Hello3 बनाओ। 651 00:34:02,440 --> 00:34:03,570 संकलित। 652 00:34:03,570 --> 00:34:06,870 डॉट hello3 स्लेश। 653 00:34:06,870 --> 00:34:08,920 और चलो, हम कहते हैं "रोब।" 654 00:34:08,920 --> 00:34:10,760 हैलो रोब। 655 00:34:10,760 --> 00:34:14,940 मैं, "नमस्ते मारिया," नमस्ते मारिया कहते हैं। 656 00:34:14,940 --> 00:34:15,719 नमस्ते मारिया। 657 00:34:15,719 --> 00:34:18,639 हन्ना अभी भी हैलो कहते हैं, " मारिया, "मैं नहीं हूँ क्योंकि 658 00:34:18,639 --> 00:34:21,340 हमारे argv 2 के साथ कुछ भी कर रही है। 659 00:34:21,340 --> 00:34:22,590 Argv 2 अब "हन्ना।" होगा 660 00:34:22,590 --> 00:34:25,030 Argc 3 होगा। 661 00:34:25,030 --> 00:34:27,735 क्या मैं इस किया था तो क्या होगा? 662 00:34:27,735 --> 00:34:31,980 663 00:34:31,980 --> 00:34:34,679 तो हैलो अशक्त। 664 00:34:34,679 --> 00:34:38,760 >> उन्होंने कुछ समय तक इस तथ्य को छुआ कि, तकनीकी, GetString 665 00:34:38,760 --> 00:34:42,429 अशक्त वापसी हो सकती है, लेकिन हम एक मिल जाएगा अधिक क्या अशक्त में बहुत कुछ वास्तव में है। 666 00:34:42,429 --> 00:34:47,449 लेकिन के एक मामले के रूप में ले कोई आम तौर पर खराब है कि तथ्य यह है। 667 00:34:47,449 --> 00:34:50,179 अगर हम कुछ गलत किया है यह "नमस्ते अशक्त।" मुद्रण है 668 00:34:50,179 --> 00:34:52,179 और कारण हमने किया है- अच्छी तरह से कुछ गड़बड़ है, 669 00:34:52,179 --> 00:34:56,179 मैं डॉट स्लेश hello3 भाग गया, जब argc 1 था। 670 00:34:56,179 --> 00:34:59,680 तो यह है कि argv की लंबाई 1 था इसका मतलब है। 671 00:34:59,680 --> 00:35:05,110 एक सरणी की लंबाई 1 का है, केवल वैध सूचकांक शून्य है। 672 00:35:05,110 --> 00:35:08,550 और यहाँ तो एक बाहर है argv इस सरणी की सीमा होती है। 673 00:35:08,550 --> 00:35:13,410 यह जब मैंने कोशिश से पहले के समान था सरणी के अंत के बाहर 6 स्टोर करने के लिए। 674 00:35:13,410 --> 00:35:18,100 तो मैं कुछ का उपयोग करने की कोशिश कर रहा हूँ argv गिनती के बाहर, 675 00:35:18,100 --> 00:35:21,340 और हम अशक्त हो रही है। 676 00:35:21,340 --> 00:35:24,360 >> की तो एक बेहतर संस्करण यह एक सुधार, 677 00:35:24,360 --> 00:35:27,010 स्पष्ट argc जाँच कर रहा है। 678 00:35:27,010 --> 00:35:33,580 Argc 2 के बराबर होती है तो, अगर है कि हम भागा इसका मतलब डॉट स्लेश hello3 लूटने की तरह कुछ। 679 00:35:33,580 --> 00:35:36,840 और यह "नमस्ते रोब।" प्रिंट होगा 680 00:35:36,840 --> 00:35:39,850 Argc बराबर नहीं है तो 2, तो यह सिर्फ जा रहा है 681 00:35:39,850 --> 00:35:42,560 तुम डाल जो कुछ अनदेखी करने के लिए कमांड लाइन तर्क पर 682 00:35:42,560 --> 00:35:43,960 कमांड लाइन तर्क के रूप में। 683 00:35:43,960 --> 00:35:47,168 आप सब पर किसी भी नहीं डाली, तो यह है सिर्फ इतना है कि उपेक्षा और सिर्फ कहने के लिए जा रहे हैं, 684 00:35:47,168 --> 00:35:47,960 "कैसे हो तुम।" 685 00:35:47,960 --> 00:35:51,490 >> तो यह संकलन। 686 00:35:51,490 --> 00:35:54,500 Hello4 बनाओ। 687 00:35:54,500 --> 00:35:56,790 और hello4 चल रहा है। 688 00:35:56,790 --> 00:36:00,010 इसे इस तरह से चल रहा है, क्या मुद्रित किया जाना चाहिए? 689 00:36:00,010 --> 00:36:01,330 "कैसे हो तुम।" 690 00:36:01,330 --> 00:36:02,810 कैसे हो तुम। 691 00:36:02,810 --> 00:36:05,870 क्या hello4 रोब के बारे में? 692 00:36:05,870 --> 00:36:06,950 "नमस्ते रोब।" 693 00:36:06,950 --> 00:36:10,580 और अंत में, हैलो रोब मारिया , "नमस्ते आप" फिर बस है 694 00:36:10,580 --> 00:36:13,677 क्या तुम सच में प्रवेश नहीं किया था क्योंकि यह उम्मीद है कि कुछ और। 695 00:36:13,677 --> 00:36:15,510 आप अधिक नामों में प्रवेश किया इसे संभाल सकता है, की तुलना में 696 00:36:15,510 --> 00:36:19,500 तो यह सिर्फ करने के लिए चूक हैलो आप व्यवहार। 697 00:36:19,500 --> 00:36:23,040 इस पर सवाल तो? 698 00:36:23,040 --> 00:36:26,290 या कमांड लाइन तर्क? 699 00:36:26,290 --> 00:36:28,690 >> ठीक है, तो एक पर एक नज़र लेने का उपयोग कर के कुछ और उदाहरण 700 00:36:28,690 --> 00:36:34,230 कमांड लाइन पहले arguments-- हम पानी का छींटा 1 डॉट ग argv है। 701 00:36:34,230 --> 00:36:38,510 तो टिप्पणी दूर दे क्या इस कार्यक्रम कर किया जाना चाहिए। 702 00:36:38,510 --> 00:36:42,460 लेकिन, पाश के लिए इस now-- नोटिस इस सटीक पैटर्न से मेल खाता 703 00:36:42,460 --> 00:36:43,390 मैं पहले कह रहा था। 704 00:36:43,390 --> 00:36:46,240 हम सिर्फ होना होगा n के बजाय argc इस्तेमाल करते हैं। 705 00:36:46,240 --> 00:36:48,880 अब argc वास्तव में n है। 706 00:36:48,880 --> 00:36:51,260 यह argv सरणी की लंबाई है। 707 00:36:51,260 --> 00:36:59,600 तो argv पर iterating कर रहे हैं सरणी printf आईएनजी प्रत्येक argv मूल्य। 708 00:36:59,600 --> 00:37:04,730 >> मैं यह इसलिए यदि। 709 00:37:04,730 --> 00:37:08,232 Argv 1 बनाओ। 710 00:37:08,232 --> 00:37:09,940 यह संकलित। 711 00:37:09,940 --> 00:37:11,620 डॉट argv 1 स्लेश। 712 00:37:11,620 --> 00:37:15,530 बस यह चल रहा है, यह प्रिंट स्लेश argv 1 डॉट 713 00:37:15,530 --> 00:37:18,500 कि केवल कमांड लाइन का था तब से कार्यक्रम का नाम argument--। 714 00:37:18,500 --> 00:37:22,080 हमेशा least-- पर हो जाएगा argc, एक की तुलना में कम नहीं हो सकता 715 00:37:22,080 --> 00:37:25,910 के बाद से वहाँ हमेशा कम से कम कार्यक्रम को चलाने के नाम हो। 716 00:37:25,910 --> 00:37:32,040 तो 1 रोब 1 argv प्रिंट होगा argv और उसके बाद नई लाइन पर "रोब।" 717 00:37:32,040 --> 00:37:36,350 >> पहली यात्रा में तो इस लूप की, मैं 0 है। 718 00:37:36,350 --> 00:37:39,090 Argv 0 कार्यक्रम का नाम है। 719 00:37:39,090 --> 00:37:40,010 डॉट argv 1 स्लेश। 720 00:37:40,010 --> 00:37:43,770 और फिर 1 मेरा पहला है argv रोब है जो कमांड लाइन तर्क,। 721 00:37:43,770 --> 00:37:45,920 इस बिंदु पर, हम argc के बराबर हैं। 722 00:37:45,920 --> 00:37:48,210 हम लूप से बाहर तोड़ने के लिए और हम कर रहे हैं। 723 00:37:48,210 --> 00:37:53,940 तो यह एक मनमाना के लिए काम करेंगे कमांड लाइन तर्क की संख्या। 724 00:37:53,940 --> 00:37:58,550 सूचना है कि यह argv 0, argv प्रिंट 1, argv 2, argv 3, argv 4। 725 00:37:58,550 --> 00:38:00,150 और कोई argv 5 है। 726 00:38:00,150 --> 00:38:01,460 argc 5 के बराबर है। 727 00:38:01,460 --> 00:38:06,960 इसलिए मैं 5 के बराबर होती है पर argc-- पर, हम लूप के बाहर तोड़। 728 00:38:06,960 --> 00:38:07,950 ठीक। 729 00:38:07,950 --> 00:38:11,315 हम पहले उस पर सवाल तो एक अधिक जटिल उदाहरण देखो? 730 00:38:11,315 --> 00:38:14,190 731 00:38:14,190 --> 00:38:16,860 >> तो 2 argv। 732 00:38:16,860 --> 00:38:17,830 ठीक है। 733 00:38:17,830 --> 00:38:20,610 इसलिए हम अभी भी मुद्रण कर रहे हैं कमांड लाइन तर्क। 734 00:38:20,610 --> 00:38:23,170 लेकिन अब हमारे पास नोटिस एक पाश के लिए नेस्ट। 735 00:38:23,170 --> 00:38:24,670 तो क्या कर रही है? 736 00:38:24,670 --> 00:38:28,430 तो पहले पाश कर रही है वास्तव में क्या यह पहले किया था। 737 00:38:28,430 --> 00:38:30,950 हम अभी भी पर पाशन रहे प्रत्येक कमांड लाइन तर्क है, 738 00:38:30,950 --> 00:38:34,260 लेकिन अब इस दूसरे loop-- हम है पहले भी कुछ इस तरह देखा। 739 00:38:34,260 --> 00:38:38,600 वह खत्म पुनरावृति गया तो Zamyla जेड-ए-एम-वाई-एल-ए को छापता है। 740 00:38:38,600 --> 00:38:44,816 तो पूर्णांक जम्मू के लिए इस दूसरे लूप के बराबर होती है 0, एन argv ब्रैकेट मैं की strlen बराबर होती है। 741 00:38:44,816 --> 00:38:49,170 >> तो चलो पहले के लिए लगता है the-- के माध्यम से चलते हैं। 742 00:38:49,170 --> 00:38:53,560 चलो क्या कंप्यूटर होगा लगता है सिर्फ बिंदी के रूप में मैं इस कार्यक्रम में भाग गया, तो ऐसा 743 00:38:53,560 --> 00:38:56,030 argv डैश 2 स्लेश। 744 00:38:56,030 --> 00:39:03,590 तो अगर मैं तो इस कोड को दौड़ा argc 1 के बराबर होने जा रहा है। 745 00:39:03,590 --> 00:39:07,050 और स्ट्रिंग वहाँ केवल argv-- argv में एक सूचकांक होने जा रहा, 746 00:39:07,050 --> 00:39:12,370 और कहा कि डॉट के बराबर होने जा रहा है argv स्लेश 2-- कार्यक्रम का नाम। 747 00:39:12,370 --> 00:39:19,170 >> ठीक है, तो अब मैं से मैं कम, 0 के बराबर होती है 1, मैं प्लस प्लस पूर्णांक जे 0 के बराबर होती है के लिए, 748 00:39:19,170 --> 00:39:23,880 n में तो, argv ब्रैकेट 0 से strlen के बराबर होती है इस पाश की पहली यात्रा। argv 749 00:39:23,880 --> 00:39:27,250 ब्रैकेट 0 डॉट स्लेश argv 2 है। 750 00:39:27,250 --> 00:39:29,320 तो यह है कि स्ट्रिंग की लंबाई क्या है? 751 00:39:29,320 --> 00:39:32,480 वैसे, एक-आर-जी वी डैश 2 स्लेश डॉट। 752 00:39:32,480 --> 00:39:35,020 इस बात का strlen तो 8 हो जाएगा। 753 00:39:35,020 --> 00:39:37,500 तो जे 0 के बराबर होती है, एन 8 के बराबर होती है। 754 00:39:37,500 --> 00:39:39,530 जब तक जम्मू 8, J ++ की तुलना में कम है। 755 00:39:39,530 --> 00:39:44,080 और उस के साथ हम हो जा रहे हैं एक ही चरित्र, मुद्रण, जो 756 00:39:44,080 --> 00:39:47,350 मैं जम्मू ब्रैकेट argv ब्रैकेट है। 757 00:39:47,350 --> 00:39:49,826 >> इतना ही मैं शून्य है। 758 00:39:49,826 --> 00:39:51,700 हम अभी भी केवल एक ही है कमांड लाइन तर्क। 759 00:39:51,700 --> 00:39:53,890 कि पहली यात्रा में पाश के लिए, हम कर रहे हैं 760 00:39:53,890 --> 00:39:56,950 मुद्रण होने जा रहा argv ब्रैकेट 0 ब्रैकेट 0। 761 00:39:56,950 --> 00:39:58,325 और फिर जम्मू वेतन वृद्धि करने जा रहा है। 762 00:39:58,325 --> 00:40:01,650 और हम मुद्रण करने के लिए जा रहे हैं argv ब्रैकेट 0 ब्रैकेट 1। 763 00:40:01,650 --> 00:40:04,150 और फिर ब्रैकेट 0 ब्रैकेट 2 argv। 764 00:40:04,150 --> 00:40:09,030 >> तो यह हमारी पहली मुठभेड़ है बहु-आयामी arrays की। 765 00:40:09,030 --> 00:40:12,770 मैंने कहा कि पहले याद रखें कि argv तकनीकी रूप से है 766 00:40:12,770 --> 00:40:15,950 पात्रों की सरणियों की एक सरणी। 767 00:40:15,950 --> 00:40:24,360 तो यहाँ मैं कुछ तरह ने कहा कि अगर स्ट्रिंग एस, argv ब्रैकेट मैं बराबर होती है 768 00:40:24,360 --> 00:40:29,590 और फिर मैं रों ने कहा, ब्रैकेट जम्मू, इस एक ही बात को पूरा किया जाएगा। 769 00:40:29,590 --> 00:40:31,960 अब, आप पहले ब्रैकेट जम्मू देखा है। 770 00:40:31,960 --> 00:40:36,680 वह सिर्फ जम्मू-वीं का उपयोग कर रहा है इस स्ट्रिंग के चरित्र। 771 00:40:36,680 --> 00:40:48,010 इस के साथ तो, हम हो रही है मैं वें argv की जम्मू-वें चरित्र। 772 00:40:48,010 --> 00:40:51,450 >> तो क्या यह अंततः उत्पादन करना चाहिए? 773 00:40:51,450 --> 00:40:53,210 Argv 2 बनाओ। 774 00:40:53,210 --> 00:40:54,730 यह संकलित। 775 00:40:54,730 --> 00:40:56,340 डॉट argv 2 स्लेश। 776 00:40:56,340 --> 00:41:03,790 "रोब मारिया हन्ना," और हमें कुछ कमरा दे। 777 00:41:03,790 --> 00:41:07,050 इसलिए हम इस outputting है कि वहाँ अपनी लाइन और स्लेश पर डॉट 778 00:41:07,050 --> 00:41:08,920 अपनी लाइन पर अपनी लाइन और एक पर। 779 00:41:08,920 --> 00:41:11,260 यह पता प्रत्येक मुद्रण है व्यक्ति के चरित्र 780 00:41:11,260 --> 00:41:12,950 प्रत्येक कमांड लाइन तर्क की। 781 00:41:12,950 --> 00:41:15,960 और फिर उन दोनों के बीच में, क्योंकि इस नई लाइन की 782 00:41:15,960 --> 00:41:19,380 हम में, यहाँ नीचे मुद्रण कर रहे हैं उन दोनों के बीच यह एक नई लाइन प्रिंट हूँ। 783 00:41:19,380 --> 00:41:24,540 >> तो इस के समान है प्रायर argv पानी का छींटा 1, 784 00:41:24,540 --> 00:41:26,459 प्रत्येक मुद्रित जो कमांड लाइन तर्क है, 785 00:41:26,459 --> 00:41:28,500 लेकिन अब हम मुद्रण कर रहे हैं कमांड लाइन तर्क 786 00:41:28,500 --> 00:41:31,950 और फिर एक के माध्यम से पुनरावृति प्रत्येक कमांड लाइन तर्क का चरित्र 787 00:41:31,950 --> 00:41:35,400 इस उत्पादन प्राप्त करने के लिए। 788 00:41:35,400 --> 00:41:36,870 ठीक है? 789 00:41:36,870 --> 00:41:40,570 इस पर सवाल तो? 790 00:41:40,570 --> 00:41:45,130 >> नोट करने के लिए एक बात यह है कि कमांड लाइन arguments-- 791 00:41:45,130 --> 00:41:49,990 इसलिए वे के रूप में रिक्त स्थान से अलग हो रहे हैं आप स्वाभाविक रूप से उन्हें होने की उम्मीद है। 792 00:41:49,990 --> 00:41:53,050 तो एक स्ट्रिंग में यह रिक्त स्थान हो सकता है। 793 00:41:53,050 --> 00:41:57,380 यह सुपर महत्वपूर्ण नहीं है, लेकिन मुझे लगता है कि अगर तीसरे कमांड लाइन तर्क चाहता था 794 00:41:57,380 --> 00:42:01,226 मैं तो उस में एक जगह है कुछ इस तरह कह सकते हैं। 795 00:42:01,226 --> 00:42:04,470 796 00:42:04,470 --> 00:42:05,550 ठीक है? 797 00:42:05,550 --> 00:42:12,190 तो अब यह अभी भी केवल तीन है कमांड लाइन arguments-- अच्छी तरह से 4। 798 00:42:12,190 --> 00:42:17,620 डॉट argv डैश 2 स्लेश, रोब, मारिया, और हन्ना ब्लूमबर्ग। 799 00:42:17,620 --> 00:42:18,320 ठीक। 800 00:42:18,320 --> 00:42:19,310 इस पर प्रश्न? 801 00:42:19,310 --> 00:42:22,700 802 00:42:22,700 --> 00:42:24,894 >> विशेष कुछ भी नहीं है अंतरिक्ष चरित्र के बारे में। 803 00:42:24,894 --> 00:42:27,810 यह सिर्फ इतना है कि होना होता है कमांड लाइन अंतरिक्ष चरित्र व्यवहार करता है 804 00:42:27,810 --> 00:42:29,226 कैसे के रूप में आप प्रत्येक तर्क अलग। 805 00:42:29,226 --> 00:42:32,048 806 00:42:32,048 --> 00:42:33,000 ठीक है। 807 00:42:33,000 --> 00:42:39,950 तो फिर समस्या सेट आप हो जा रहे हैं two-- 808 00:42:39,950 --> 00:42:43,240 गुप्त कुंजी क्रिप्टोग्राफी पर देख रहे हैं। 809 00:42:43,240 --> 00:42:47,700 कि उदाहरण के लिए तो, समान हम एक क्रिसमस स्टोरी से देखा 810 00:42:47,700 --> 00:42:52,840 आप कुछ को लागू करने जा रहे हैं एक संदेश दिया है कि एल्गोरिदम, 811 00:42:52,840 --> 00:42:55,560 आप सक्षम होने के लिए जा रहे हैं संदेश है कि एन्क्रिप्ट करने के लिए 812 00:42:55,560 --> 00:42:58,730 उस रहस्य के साथ ही है कि किसी को कुंजी, कि डिकोडर अंगूठी के साथ, 813 00:42:58,730 --> 00:43:01,090 डिक्रिप्ट करने के लिए सक्षम होना चाहिए। 814 00:43:01,090 --> 00:43:04,839 >> तो यह है कि मानक संस्करण है। 815 00:43:04,839 --> 00:43:07,130 आप को लागू करने जा रहे हैं दो अलग अलग संस्करणों। 816 00:43:07,130 --> 00:43:09,620 आप एक बार देख लेने के लिए होता है हैकर अब Edition-- पर, 817 00:43:09,620 --> 00:43:12,600 हम देने के लिए जा रहे हैं आप इस तरह एक स्ट्रिंग, 818 00:43:12,600 --> 00:43:15,240 जो एक एन्क्रिप्टेड पासवर्ड का प्रतिनिधित्व करता है। 819 00:43:15,240 --> 00:43:19,990 तो अपने लक्ष्य को बाहर निकालने के लिए है decrypted पासवर्ड क्या है। 820 00:43:19,990 --> 00:43:26,950 अब यह वास्तव में कैसे पासवर्ड है कंप्यूटर के एक बहुत में जमा हो जाती है, 821 00:43:26,950 --> 00:43:31,290 और यह सिर्फ इस संग्रहीत करता है पात्रों के यादृच्छिक स्ट्रिंग। 822 00:43:31,290 --> 00:43:34,440 आप प्राप्त करने के लिए बाहर निकालने के लिए किया है अक्षरों के इस यादृच्छिक स्ट्रिंग से 823 00:43:34,440 --> 00:43:36,140 मूल पासवर्ड क्या था। 824 00:43:36,140 --> 00:43:39,060 825 00:43:39,060 --> 00:43:43,290 >> और अंत में, के बाद इस समस्या सेट, तुम चाहिए 826 00:43:43,290 --> 00:43:46,100 क्या इसका मतलब यह समझने में सक्षम हो। 827 00:43:46,100 --> 00:43:51,650 तो आप को डिक्रिप्ट करने के लिए सीखना होगा यादृच्छिक स्ट्रिंग के इस तरह के। 828 00:43:51,650 --> 00:43:56,390 इसी तरह, आप सप्ताह से याद है 0 आप इस यूआरएल देखा हो सकता है। 829 00:43:56,390 --> 00:44:00,210 और आप के लिए सक्षम होना चाहिए अंततः इस डिक्रिप्ट। 830 00:44:00,210 --> 00:44:04,810 तुम खुश नहीं हो सकता है जब आप इसे डिक्रिप्ट और लिंक पर क्लिक करें। 831 00:44:04,810 --> 00:44:05,700 ठीक है। 832 00:44:05,700 --> 00:44:06,591 आज के लिए इतना ही। 833 00:44:06,591 --> 00:44:12,095 तो अगले हफ्ते मिलते हैं! 834 00:44:12,095 --> 00:44:18,315 >> [इलेक्ट्रॉनिक संगीत खेल] 835 00:44:18,315 --> 00:47:15,619