[संगीत बजाना] इस CS50-- हार्वर्ड है विश्वविद्यालय की शुरूआत बौद्धिक करने के लिए कंप्यूटर विज्ञान के उद्यमों और प्रोग्रामिंग की कला। और मेरा नाम डेविड मालन है, और मैं तो बस आज सुबह सोच रहा था, यह आश्चर्यजनक 20 साल आज हो गया है जब से मैं पिछले बैठे थे तुम लोगों को अब क्या करना है, जहां। यह 1996 था। मैं एक sophomore था, और मैं ले जा रहा था बहुत पहले समय के लिए CS50। और मैं भी तंत्रिका तक नहीं मिल गया था यह अपने आप नए साल लेने के लिए, आंशिक रूप से समय की वजह से। मेरे लिए कंप्यूटर विज्ञान गया था तरह की तरह है, meh। मैं एक geek का एक सा बढ़ रहा था अप, लेकिन मैं सच में नहीं था किसी बौद्धिक है क्या दिखाई दिलचस्पी बस की एक पूरी गुच्छा होना करने के लिए लोगों को हर समय प्रोग्रामिंग। और मैं ईमानदार होना करने के लिए डर गया था। पाठ्यक्रम और कंप्यूटर विज्ञान के और अधिक आम तौर पर था और कुछ हद तक, अभी भी एक क्षेत्र की इस प्रतिष्ठा है खबरदार, तो सिर्फ इसलिए कि हम में से बहुत इसके साथ अपरिचित और इसके बारे में अनिश्चित हैं। और यह वास्तव में जब तक मैं खरीदारी नहीं था इस वर्ग कि sophomore fall-- और फिर भी, मैं सिर्फ दाखिला क्योंकि professor-- मेरा पहला आकाओं में से एक ब्रायन अब Princeton-- पर Kernighan मेरे कक्षा पास असफल लेने की अनुमति दी। और वास्तव में, यही कारण है आज हम अनुमति देते हैं और प्रोत्साहित इस क्लास लेने के लिए छात्रों / बैठे थे unsat। और उसके बाद ही द्वारा सेमेस्टर के अंत मुझे पसंद है, वाह, यह महसूस किया इस तरह के एक अपरिचित क्षेत्र नहीं था। एक वास्तव में, यह था बहुत, क्षेत्र को सशक्त बनाने और अधिक excitingly, विशेष रूप से बाद में, मैं में पाठ्यक्रम के रूप में लिया नाटकीय कला 101 और लैटिन एक और फिर अंत स्नातक स्कूल पुरातत्व, मैं वास्तव में देखने के लिए शुरू किया था इस क्षेत्र है, कंप्यूटर के चौराहों विज्ञान, मानविकी के साथ, प्राकृतिक विज्ञान, कला, चिकित्सा, और जैसे। और इतना है कि क्या सिर्फ इतना है कंप्यूटर विज्ञान के बारे में साफ अंत में, जैसा कि हम आशा है कि आप करेंगे see-- इसके लागू है इन अन्य क्षेत्रों, और कैसे आप कर सकते हैं करने के लिए आज के और सेमेस्टर के कुछ ले विचारों और व्यावहारिक कौशल वापस अपने खुद के डोमेन के लिए, और वास्तव में इस चौराहे का पता लगाने उदार कला और विज्ञान का। आप में से तो 73%, पिछले यदि साल कोई संकेत है, इससे पहले एक सीएस कोर्स में कभी नहीं लिया है। तो अगर, मेरे जैसे, आप कर रहे हैं एक छोटा सा महसूस कर रही है डर लगता है, या सच में तुम नहीं हो वास्तव में यकीन है कि तुम यहाँ भी क्यों कर रहे हैं। कुछ शायद तुम सिर्फ पालन किया सैंडर्स के लिए खत्म मित्र अभी। यही कारण है कि पूरी तरह से ठीक है। यहाँ लक्ष्य हुक करने के लिए है आप और आप आश्वस्त करने के लिए कि अगर आप को देखने के लिए छोड़ दिया और सही करने के लिए, आप के साथ सहपाठियों को देखने के लिए जा रहे हैं कम या ज्यादा के रूप में अनुभव के रूप में कि आप अपने आप हो सकता है। और वास्तव में, हम हिस्सा लेंगे कुछ आँकड़े बाद में आज क्या की जनसांख्यिकी के रूप में आम तौर पर वर्ग की तरह देखो। और के रूप में जोड़ा reassurance-- और यह हम मतलब है के बाद से मैं निश्चित रूप में पदभार संभाल लिया कुछ साल ago-- में पाठ्यक्रम के पाठ्यक्रम कि this-- है जो अंततः इस कोर्स में मायने रखती है इतना तुम कहाँ अंत नहीं है ऊपर अपने सहपाठियों के सापेक्ष, लेकिन जहां आप 11 सप्ताह में, के अंत सेमेस्टर, खुद के सापेक्ष अंत हफ्ते 0 में, जो है जहां हम आज यहां हैं। और यह मुझे क्या एहसास हुआ है उन सभी सालों से पहले। और मैं एक बहुत कुछ पता है कक्षाओं यह कहना है, लेकिन यह है विशेष रूप से कंप्यूटर विज्ञान के क्षेत्र में सच है। दिन के अंत में, इस क्षेत्र को क्योंकि यह मेरे लिए था अपरिचित है और आप के लिए हो सकता है, वास्तव में है बस समस्या को हल करने के बारे में। और इस तरह के रूप में, यह इस करता है प्रयोज्यता अन्य क्षेत्रों पाने के लिए। और वास्तव में, यदि हम कोशिश की गढ़ने के लिए इसका क्या मतलब है, इस समस्या को सुलझाने है इसके संक्षेप में, मैं हिम्मत। वहाँ तो जो कुछ भी input-- है यह कि आप को हल करने की कोशिश कर रहे है। उत्पादन, वहाँ जो उम्मीद है लगता है कि समस्या का हल। और फिर, जैसा हम करेंगे कंप्यूटर विज्ञान में कहते हैं, वहाँ में इस ब्लैक बॉक्स है बीच आप जरूरी नहीं है कि यह कैसे काम करता है के बारे में परवाह है। तुम अपने आप को अंत में हो सकता है लागू करने के क्या है कि बॉक्स के अंदर है। लेकिन आज के उद्देश्यों और अधिक के लिए जीवन में आम तौर पर, आप सभी की देखभाल के बारे में कि ये समस्याएँ हल हो जाता है। और क्या इस कोर्स है अंततः के बारे में तलाश रही है के चौराहे इन इनपुट और आउटपुट और इन तथाकथित एल्गोरिदम, जैसा कि हम जल्द ही देखेंगे, कि लागू करने के क्या है नीचे वहाँ, डाकू। लेकिन इन सूचनाओं और इन outputs-- कि वास्तव में क्या मतलब है? खैर, दिन के अंत में, हम की जरूरत है जानकारी का प्रतिनिधित्व करने का कोई रास्ता। यह एक कंप्यूटर में विशेष रूप से सच है, जो कल्पना और यह रूप में परिसर के रूप में लग सकता है, एक सुंदर गूंगा डिवाइस है। यह है कि क्या से electricity-- लेता है एक केबल या input-- के रूप में एक बैटरी और फिर यह कुछ पैदा करता है स्क्रीन पर preprogramed हिमायती हैं। लेकिन हम से कैसे मिलता है वहाँ खत्म करने के लिए शुरू कर दिया? वैसे, एक समस्या क्या हल किया जाना है? वैसे, शायद हम पर हो सकता है, किसी भी सत्र की शुरुआत, उपस्थिति लेने की कोशिश इस तरह एक कमरे में। तो मैं एक, दो, तीन की तरह हो सकता है। या हो सकता है, अगर मैंने ऐसा किया था तरह का ट्रैक रखने के लिए myself-- की things-- का ट्रैक रखने के लिए मैं जल्दी से उंगलियों से बाहर चला सकता है। तो मैं बस हैश marks-- एक बना सकता है व्यक्ति, दो, तीन, चार, पांच, छह, सात आठ। और हम सब शायद इस किया है, चाहे अपने हाथों पर या कागज के एक टुकड़े पर। और यह वास्तव में सिर्फ है कुछ एकल संकेतन बुलाया जहां अगर आप केवल एक पत्र है अपने वर्णमाला, एक या हैश में इस मामले में निशान, हर एक के लिए इनपुट आप गणना करना चाहते हैं, आप नीचे इन में से एक खड़ा करने की जरूरत इन चिह्नों में से एक letters--। ठीक है। यही कारण है कि सब ठीक है और अच्छा है और सब है कि जटिल नहीं। लेकिन कंप्यूटर सब नहीं कर रहे लगता है कि बहुत अधिक जटिल है। दरअसल, आप में से अधिकांश शायद पता है, भले ही आप वास्तव में नहीं है माना जाता है क्या इसका मतलब यह है, कि कंप्यूटर केवल शून्य को समझने और तथाकथित बाइनरी सिस्टम ones--। हम मनुष्यों, इसके विपरीत, इसलिए कर रहे हैं और अधिक परिष्कृत insofar हम नौ के माध्यम से शून्य को समझने के रूप में। लेकिन फिर भी अगर बाइनरी पहली बार में, है नज़र, बिल्कुल नहीं है कि परिचित, यह पता चला है कि यह सिर्फ सिस्टम की तरह है और विचार है कि हम पहले से ही जानते हैं। तो उदाहरण के लिए, इस पर विचार करें। यह सिर्फ प्रतीकों में से एक दृश्य है। और आप सभी जब, इस पर glancing, शायद लगता है कि कुछ भी नहीं 123-- वास्तव में वहाँ दिलचस्प है। लेकिन ऐसा क्यों है यह संख्या 123 है? ये बस पर Glyphs हैं screen-- सिर्फ पैटर्न किसी खींचा या टाइप हो सकता है। लेकिन तुम मुझे पसंद कर रहे हैं, तो आप शायद ग्रेड स्कूल से याद कि वहाँ की तरह हैं कॉलम या स्थानों यहाँ। वहाँ एक जगह और है दस की जगह और सौ की जगह। और कारण यह है कि 123 और न सिर्फ तीन प्रतीकों में से एक पैटर्न कारण यह है, ज़ाहिर है, अगर हम सैकड़ों जगह में एक एक है आप 100 बार एक का गणित है, और फिर दो दस की जगह में। तो यह है कि 10 बार 2, और फिर तीन में है एक की जगह और है कि 1 गुना 3 है। और तुम में से उन सभी को जोड़ते हैं, बेशक, आप 100 से अधिक 20 प्लस 3 मिलता है। तो हम बस एक पैटर्न के साथ शुरू कर दिया की एक alphabet-- symbols-- लेकिन फिर हम पर अर्थ मैप किया यह इन स्तंभों के माध्यम से। खैर, यह पता चला है कि कंप्यूटर वास्तव में नहीं हैं वह सब तुम्हारे और मेरे से अलग है। लेकिन बजाय 10 की शक्तियों का उपयोग कर के, इसलिए speak-- करने के लिए 1, 10, 100, 1000, 10,000 जगह और इतने वे वास्तव में forth-- बस की शक्तियों का उपयोग 2-- एक तो, 2, 4, और उसके बाद हम और अधिक अंक डाल, 8, 16, 32, 64, 128, और बहुत आगे है। और तो यह है कि कैसे एक कंप्यूटर है संख्या 0 प्रतिनिधित्व करेंगे, सिर्फ हम इंसानों की तरह। 0, 0, 0-- और आप शायद अनुमान लगा सकते हैं शून्य और लोगों का क्या पैटर्न, यदि केवल एक कंप्यूटर से कर सकते हैं 0 बोलते हैं या 1-- क्या पैटर्न का प्रतिनिधित्व करने के लिए जा रहा है नंबर 1 हम इंसानों के रूप में जानते हैं? Yeah-- 0, 0, 1। ठीक है। तो 0, 0, 1 हम कैसे प्रतिनिधित्व है 1, ताकि आप तो इच्छुक हो सकते हैं नंबर 2 का प्रतिनिधित्व करने के लिए, यदि आप चार की जगह और दो की जगह एक जगह के रूप में, आप अच्छी तरह से कह सकते हैं, हम एक जगह में एक 1 था, और अब हम चाहते हैं 2 तक गिनती, तुम हो सकता है इस करते हैं और इस छोड़ने के एक शून्य होने के लिए। लेकिन निश्चित रूप से यह नहीं है कि कैसे दशमलव प्रणाली या तो काम करता है। आप में एक अंक डाल उन स्तंभों के दोनों, आप गणित करने के लिए मिल गया है। तो क्या नंबर मैंने किया गलती सिर्फ प्रतिनिधित्व करते हैं? तो यह 3 है, क्योंकि 2 बार 1 प्लस 1 बार 1, ज़ाहिर है, हमें तीन देता है। तो यह दो होगा। बिट की तरह flips, तो बात है, 0 के रूप में , एक एक हो जाता है अधिक से अधिक एक 9 भूमिकाओं की तरह और हो जाता है एक 0 जब आप 1 ले। यह तो निश्चित रूप से तीन होगा। एक और दिलचस्प बात यह है Four-- जहां लोगों पर रोल होता है, और तुम इतनी बात करने के लिए 1, ले। तो यह, ज़ाहिर है, 4 है। लेकिन अगर आप तेजी से आगे अब, सबसे बड़ी संख्या में हो रहा है क्या हो सकता है कि एक कंप्यूटर का प्रतिनिधित्व कर सकते हैं? तो यह सिर्फ इस मामले में सात, है ना? क्योंकि तुम चार में से एक एक है, दो में एक एक, एक में एक से एक। तो यह है कि 4 प्लस 2 प्लस 1 है। तो यह है कि आप सात देता है। और वास्तव में, यह होगा पहली नज़र में लग कंप्यूटर भरोसा कर सकते हैं कि कोई इस से भी अधिक है। लेकिन निश्चित रूप से यह सच नहीं है। हम इंसानों क्या करते हो जब हम चाहते हैं 999 तरह की तुलना में अधिक गिनती करने के लिए? बस एक ले जाने के लिए और बस बाईं ओर एक चौथा अंकों जोड़ें। और तो वास्तव में हम कर सकते थे। हम एक आठ का हो सकता था और एक 16 वीं की जगह जगह है, और एक 32 की जगह, 64, 128-- और आप सिर्फ अनंत तक चल रहा रख सकते हैं। इसलिए इन शून्य और ones-- तथाकथित बाइनरी system-- क्या कर रहे हैं एक कंप्यूटर वैज्ञानिक होगा आम तौर पर एक सा है, या बाइनरी अंकों कहते हैं। लेकिन अब, कैसे हम से मिलता है अवधारणा या इन बातों का ग्राफ़िक्स एक वास्तविक कंप्यूटर करने के लिए? हम एक कदम यहाँ लंघन होने लगते हैं। खैर, अंत में ही इनपुट दिन की, यहाँ अपने लैपटॉप के लिए बिजली के इस प्रवाह है। यहां तक ​​कि अगर यह एक लंबा हो गया है समय के बाद आप के बारे में सोचा या के बारे में कभी नहीं सोचा था कैसे बिजली काम करता है, वहाँ में बहने इलेक्ट्रॉनों है या बाहर है, और है कि इनपुट की मेरी तरह है। तो यह है कि अगर सब हम कर रहे हैं कि यहाँ इनपुट के रूप में हो रही है, हम उस जानकारी के साथ क्या कर सकते हैं? खैर, हम के रूप में एक शून्य के बारे में सोच सकता है सिर्फ बिजली का अभाव। कुछ भी नहीं flowinw है, कुछ भी नहीं है चलती है, कुछ भी नहीं हो रहा है। कि बस डिफ़ॉल्ट शून्य state--। लेकिन बिजली, क्यों बह रही है, अगर वहाँ है हम सिर्फ मनमाने ढंग से नहीं करते हैं, लेकिन विश्व स्तर पर लगातार एक से एक है कि कहते हैं। तो बस कोई शक्ति होने से, हम एक शून्य, हाँ शक्ति है, हम एक नहीं, सत्ता one--, हाँ शक्ति है। और उस रास्ते में, कुछ का उपयोग अधिक शारीरिक या इलेक्ट्रॉनिक हम इस धारणा को लागू करने के लिए शुरू कुछ या तो एक या एक शून्य किया जा रहा है। दरअसल, हम सिर्फ इस पर यहाँ कर सकता है। यहाँ तो, मैं नहीं तीन लेकिन आठ प्रकाश बल्ब, जिनमें से प्रत्येक अपने स्वयं के स्विच है। और अगर ऐसा है मैं प्रतिनिधित्व करना चाहता था सात की संख्या में यहाँ, मैं इन तीन प्रकाश बल्ब पर बदल सकता है। और वास्तव में, के अंदर मेरा कंप्यूटर, लाखों लोगों की है बातों के अरबों कि बस रहे हैं कि तुलना में छोटे, ट्रांजिस्टर कहा जाता है, स्विच, कि तुम बस पर और बंद कर देते हैं। इसलिए इन अपेक्षाकृत big-- रहे हैं मेरे laptop-- अंदर big-- स्विच , बहुत, बहुत सारे हैं, कई और अधिक स्विच। लेकिन वे सब करना ठीक है that-- कुछ बंद कर देते हैं पर कुछ बदल जाते हैं,। और इस तरह के रूप में, एक कंप्यूटर, प्रतिनिधित्व कर सकते हैं उन लाखों या करोड़ों के साथ ट्रांजिस्टर, लॉट के और शून्य और लोगों की बहुत सारी। और वहाँ अन्य हार्डवेयर अभी भी है कि आपको जानकारी के लिए लंबी अवधि की दुकान, ताकि जब आप खींच प्लग, आप इसे खोना नहीं है। लेकिन यह एक और दिन के लिए एक कहानी है। इसलिए हम इन बिट्स के साथ क्या कर सकते हैं? हम बस लेने के लिए हो सकता है me-- के दबाव से दूर किसी को आने के लिए चाहते हो सकता है यहाँ तक और एक डेमो ऊपर की पेशकश? मैं पहली बार इस हाथ को देखा। तुम्हारा नाम क्या है? MADAY: Maday। डेविड मालन: Maday, पर आते हैं। आपसे मिलकर अच्छा लगा। MADAY: आपसे मिलकर अच्छा लगा। डेविड मालन: इस तरह से आते हैं। मैं तुम्हें होंठ की जरूरत नहीं होगी। ठीक है। यहाँ तो, हम है, एक notice--, two-- हम चाहते हैं कि संपादित करेंगे out-- एक, दो, चार, आठ, 16, 32, 64, 128। यह जानबूझकर है। वहाँ आठ बिट्स है here-- बाइनरी digits-- शून्य और लोगों। और एक सा measure-- का एक उपयोगी इकाई है नहीं माप की एक इकाई के रूप में उपयोगी खुद पर। आम तौर पर आप कम से कम चाहते हैं इन सब बातों के आठ, उर्फ एक बाइट। इसलिए हम बिट के एक बाइट यहाँ है। तो अगर हम आप के साथ चुनौती देने के लिए करना चाहता था, उदाहरण के लिए, बाहर वर्तनी द्विआधारी में, इस मूल्य 42 here--। उस पर एक चाकू ले जाना चाहते हैं? MADAY: [सुनाई]। डेविड मालन: हाँ, बस धक्का सामने छोटे सफेद स्विच। और तुम जादू करना चाहते हैं से 42, और grabs के लिए इस CS50 तनाव है गेंद आप इस मिलता है। ठीक है। तो आप 32 की है। हम 42 की जरूरत करने जा रहे हैं। तो यह है कि एक आठ है, इसलिए है कि 40 है। और excellent-- बहुत अच्छी तरह से किया। धन्यवाद। [वाहवाही] ठीक है। तो हम एक और अधिक तनाव गेंद है। अगर हम मई को इस बार और अधिक करते हैं। एक अन्य स्वयंसेवक? मुफ्त तनाव गेंद, तनाव मुक्त गेंद। ठीक। बीच में यहाँ पर, आप नीचे आने के लिए करना चाहते हैं? ठीक है। मुझे पता है। हम वहाँ चलें। इतनी संख्या here-- नीचे आ जाओ। आपका नाम क्या है? DAVEY: डेवी। डेविड मालन: डेवी। ठीक। अप चलो, डेवी। आपसे मिलकर अच्छा लगा। और क्या हम जा रहे हैं आपके पास करने के लिए spell-- तुम वहाँ भटकती सकता है अगर सिर्फ एक moment-- के लिए नंबर 50 है। लेकिन, लेकिन, लेकिन, लेकिन, लेकिन, इन कर रहे हैं एक कारण के लिए ग्रेड स्कूल मैग्नेट। बस थोड़ा कठिन है, सब सही है? वहाँ अभी भी आठ है। ठीक है। तो क्या हम पर वहाँ क्या है? हम 32 लोगों की है। अच्छा लगा। 32 प्लस 16 हमें देता है 48-- इतने करीब। और अद्भुत। डेवी के लिए बधाई के रूप में अच्छी तरह से। [वाहवाही] ठीक है। इसलिए हम इस दिन भर कर सकते हैं, और यह सब इतना अधिक नहीं मिलता है रोचक और अधिक चुनौतीपूर्ण। लेकिन यह सच है point-- है कि कैसे अपेक्षाकृत सरल यह दिन के अंत में, क्या एक पर है, कंप्यूटर की जानकारी स्टोर करने के लिए करता है, आदानों की दुकान और अंततः दुकान या उन outputs प्रतिनिधित्व करते हैं। लेकिन अकेले की संख्या नहीं हैं सब है कि दिलचस्प है। मनुष्य तो, कुछ साल पहले, फैसला किया है, आप जानते हैं? यह समय अगर अच्छा होगा कंप्यूटर सिर्फ नहीं थे गणित के लिए calculators संचालन, लेकिन वास्तव में कर सकता है शब्द संसाधन की तरह बातें करते हैं, या ईमेल, या अधिक आधुनिक अवतार प्रौद्योगिकियों के इन प्रकार के। और इसलिए दुनिया का फैसला मनमाने ढंग से, लेकिन सार्वभौमिक, कि आप पूंजी स्टोर करना चाहते हैं एक कंप्यूटर में पत्र ए, तुम जानते हो क्या? चलो बस सभी स्टोर करने के लिए सहमत हैं शून्य और ones-- के कुछ पैटर्न bits-- कि अंततः दशमलव संख्या 65 का प्रतिनिधित्व करता है। हम बस सब उस पर सहमत हूँ। 66 बी का प्रतिनिधित्व करेंगे, 67 सी का प्रतिनिधित्व करेंगे, और वहां के अन्य पैटर्न के गुच्छों है शून्य और लोगों, या अंतर्निहित संख्या, कि प्रतिनिधित्व करेंगे अभी भी अन्य पत्र। तो अगर आप की तरह मानसिक रूप से एक पल के लिए इस अवशोषित, मैं जानबूझ कर के माध्यम से एक के ऊपर डाल दिया मैं, जहां एच 72 और मैं 73 है। अगर एक कंप्यूटर तो, के संदर्भ में एक शब्द संसाधन प्रोग्राम या एक ई-मेल, हुड के नीचे से पता चला है की bits-- पैटर्न के इन नमूनों का प्रतिनिधित्व बिट्स की 72, फिर 73, फिर 33-- क्या यह है कि कार्यक्रम में जादू सकता है? तो हाय, और फिर कुछ और। हम जरूरी नहीं पता है, लेकिन वास्तव में 33-- नहीं चार्ट पर earlier-- बस एक विस्मयादिबोधक बिंदु था। तो 72 एच था, 73 रहा है, 33 होता है एक विस्मयादिबोधक बिंदु अभी भी हो सकता है। लेकिन यह है कि, सब ठीक है और अच्छा है और वास्तव में आजकल, बजाय बस का उपयोग सात या आठ बिट्स, कुछ करने के लिए धन्यवाद यूनिकोड कहा जाता है के रूप में विरोध दिन में वापस ASCII करने के लिए, हम वास्तव में और भी अधिक प्रतिनिधित्व कर सकते हैं बस की तुलना में दिलचस्प पात्र इन मूल अंग्रेजी पक्षपाती पत्र। लेकिन हम यह भी भी प्रतिनिधित्व कर सकते हैं रंग की तरह neater बातें। क्या आपने कभी सुना है परिचित करा आरजीबी, लाल, हरे, नीले, कि बस का अर्थ है कि एक कंप्यूटर आम तौर पर bits-- के तीन सेट का उपयोग करता है कि प्रतिनिधित्व बिट्स के कुछ नंबर आप कितना लाल चाहते हैं के लिए एक नंबर, के लिए बिट्स का एक और सेट हरी आप कितना चाहते हैं, और के लिए एक और सेट की संख्या कितना नीले रंग आप चाहते हैं। तो एक बड़ी संख्या का मतलब है की बहुत सारी लाल, छोटी संख्या कोई लाल का मतलब है। और इसलिए इन तरह के होते हैं के बीच यहाँ मूल्यों। तो मुझे कुछ लाल देना, मुझे कुछ देना हरे, नीले और मुझे का एक छोटा सा दे। और अगर आप उन तीन रंगों का मिश्रण है, तो एक साथ रंग का, इस मामले में, आप इस संदिग्ध छाया मिल के पीले या भूरे रंग के। लेकिन आठ साल की उस पैटर्न प्लस आठ प्लस इसलिए 24 bits-- eight-- सही करने के लिए छोड़ दिया है, कैसे एक कंप्यूटर है कि विशेष रंग का प्रतिनिधित्व करेगा। अब यह सिर्फ एक स्क्रीन पर बिंदी है। आप अपने टीवी पर बहुत करीब से देखो तो अपने कंप्यूटर, आप डॉट्स या पिक्सल देखेंगे। और तुम में से एक पूरे ग्रिड है, तो पिक्सल, क्षैतिज और खड़ी, आप छवियों है। और फिर अगर तुम ले लो एक छवि और फिर धो अपने आप को एक छवि दिखाने, एक और छवि, एक और छवि, एक और छवि, वास्तव में तेजी से, निश्चित रूप से आप फिल्में की है। और तो नोटिस जहां हम शुरू कर दिया। हम इन शून्य और लोगों के साथ शुरू कर दिया। हम वहाँ से काम करने के लिए दशमलव संख्याओं, हम उन्हें कैसे प्रतिनिधित्व करते हैं। अब हम वर्णमाला के अक्षरों की है। लेकिन में अन्य संदर्भों इंतजार है, हम उपयोग कर सकते हैं कुछ अधिक बिट्स और रंग प्रतिनिधित्व करते हैं। जैसे ही आप के रूप में रंगों का प्रतिनिधित्व करने की क्षमता है, आप का प्रतिनिधित्व करने की क्षमता है फोटो और एनिमेटेड gifs और स्क्रीन पर अन्य इस तरह के पात्रों। और तुम में से एक पूरी गुच्छा है जब छवियों को एक बार मानव द्वारा उड़ान, यह गति चित्रों की तरह लग रहा है और तो आप के रूप में अच्छी तरह से वीडियो मिलता है। तो ये बहुत का उपयोग कर सरल पुरातन हम करते हैं का प्रतिनिधित्व करने का तरीका नहीं है अंतत: मीडिया के इन रूपों के सभी। और हम फिर से अनमना गए और फिर और फिर, हम जब तक सबसे कम स्तर से मिलता है इस उच्चतम स्तर तक। तो यह है कि हमें इस देता है अमूर्त के सामान्य विचार। लेकिन हम यहाँ शुरू कर दिया। यहाँ अब, हम हो सकता है एक कंप्यूटर में प्रतिनिधित्व शून्य और लोगों के साथ हमारे आदानों, शून्य और लोगों में हमारे outputs, लेकिन क्या बॉक्स के अंदर चला जाता है? वह है, जहां कंप्यूटर है विज्ञान दिलचस्प हो जाता है। यही कारण है कि जहां आप वास्तव में लाने के लिए अपने अपने मन की समस्याओं को हल करने के लिए सहन करने के लिए। अब हम बंधेज कर सकते हैं, के लिए सेमेस्टर के बाकी है, हाँ। मैं कैसे द्विआधारी काम करता है। मुझे याद है कि ASCII या Unicode-- मानचित्रण काम करता है letters-- करने के लिए। और यह निश्चित रूप से खड़ा है कि हम कारण है लाल और हरे रंग का प्रतिनिधित्व कर सकता है और नीले, और मल्टीमीडिया के रूप में अच्छी तरह से प्रतिनिधित्व करते हैं। लेकिन यह दिलचस्प बात है। यह वही है जो किसी को बनाता है समस्याओं को सुलझाने में सक्षम है। और एक ऐसी समस्या हम क्या करना पसंद है, वास्तव में, उपस्थिति ले जा रहा है, या इस एल्गोरिदम कर रही है। और फिर, मैं यह कर सकता है। मैं एक, दो, तीन, चार कर सकता है पांच, छह, सात, आठ से नौ। और मैं यह लिख सकता है नीचे इसे का ट्रैक रखने के लिए। लेकिन वह सिर्फ है कि मैं कैसे होगा जानकारी प्रतिनिधित्व करते हैं। या मैं इस faster-- कर सकता है दो, चार, छह, आठ, दस, 12, 14, 16, 18, 20, 22-- यह दो बार की तरह लगता है उपवास के रूप में है, लेकिन यह अभी भी है समय की एक पूरी बहुत कुछ लेने के लिए जा रहा है। लेकिन यह पता चला है, अगर हम अभी तक का लाभ उठाने एक और resource-- और वास्तव में कंप्यूटर इन दिनों कई CPUs या दिमाग है। यह पता चला है कंप्यूटर कर सकते हैं एक बार में बहुत सी बातें करते हैं, और वास्तव में हम इस कमरे में, वास्तव में इस प्रतिनिधित्व हो सकता है। तो यह एक छोटे से सामाजिक रूप से है अजीब है, लेकिन अगर तुम मुझे हास्य होगा सिर्फ एक तीन कदम प्रक्रिया के लिए, चलो मुझे वहाँ सिर्फ जगह में सब पूछने एक पल के लिए खड़े करने के लिए। खड़े हो जाओ। तो अपने आप को लगता है, संख्या one-- इसलिए इस कमरे में हर कोई, जो लोग नहीं था सिवाय उपकृत, नंबर एक सोच रहे हैं। तो यह है कि अपना नंबर अब ठीक है। यह पहला कदम है, या एक के रूप में कंप्यूटर वैज्ञानिक या एक प्रोग्रामर आम तौर पर करते हैं, हम जा रहे हैं शून्य पर गिनती शुरू करने के लिए। तो सबसे छोटी संख्या हम कर सकते हैं उन प्रकाश बल्ब के साथ प्रतिनिधित्व शून्य है, सिर्फ उन्हें छोड़ कर सब बंद, मैं भी सकता है अभी से गिनती शुरू शून्य से एक के बजाय है। और इतना है कि क्या है कंप्यूटर वैज्ञानिकों से करते हैं। तो शून्य कदम, खड़े हो जाओ और नंबर एक का लगता है। अगले कदम के this-- जोड़ी है किसी के साथ खड़े बंद और साथ में अपनी संख्या जोड़ सकते हैं। आश्चर्यजनक। इतने समय में इस पल में, सचमुच हर किसी को भाग लेने नंबर 2 की सोच रही है, सिवाय एक अजीब व्यक्ति के लिए हमारे पास है, तो कमरे में लोगों की एक विषम संख्या। और अब यहाँ तीसरे चरण के लिए जा रहा है आप जा के this-- एक नीचे बैठना चाहिए। आप नीचे बैठना चाहिए एक, और आप अभी भी खड़े कर रहे हैं, एक कदम को वापस जाओ। ठीक है। ठीक है। ताकि अधिक से अधिक लोग चाहिए नीचे बैठे हो। सूचना है कि इस प्रेरित किया है एक चक्र में किसी तरह का loop--। आप में से कुछ awkwardly अटक जाना चाहिए, एक कदम के बीच आगे और पीछे जा रहा और दो, एक और दो, एक और दो। ठीक है। हमारा पहला बग। हम उस के साथ सौदा होगा। ठीक है। मुझे चीजों के साथ प्रोत्साहित करने के लिए कोशिश करते हैं। सिद्धांत रूप में, केवल एक व्यक्ति खड़ा है हर किसी के लिए रवाना जोड़ी करने के लिए जारी है। लेकिन मेरे काम की गति को जाने लोगों के साथ अभी भी खड़ा है। क्या नंबर पर आप के बारे में सोच रहे हैं? 46। ठीक। आगे बढ़ो और बैठ जाओ। तुम लोग अभी भी खड़े हैं। कौन अभी भी खड़ा है? क्या नंबर पर आप के बारे में सोच रहे हैं? ठीक। तो हम आप के लिए वापस आ जाएगा। पीठ में? वो क्या है? 22। ठीक किसी और को हाँ top--? 34। ठीक। यहाँ यहाँ मेरी right-- पर पर? 132, बहुत अच्छा। 22? ठीक। और जो अभी भी खड़ा है? यहाँ पर? 46, बहुत अच्छा। 72। मैं बहुत लंबे समय तक स्टाल नहीं कर सकते। हाँ? 30, अच्छा है। यहाँ पर? 23? 23। और मुझे लगता है कि हर किसी का सिवाय इसके कि आप लोग, कोई दबाव नहीं है। अरे रुको। 28? बस आठ। ठीक। बस आठ। यहाँ नीचे? 30। 23। 24। 18। यह सबसे बुरी कार्यान्वयन है इस एल्गोरिथ्म कभी की। ठीक। तो किसी और को? कोई और? ठीक। एक और। 16? ठीक। 16। ठीक है। तो अगर मैं किसी को भी याद नहीं है यहाँ चमक, जब मैं हिट दर्ज, हम एल्गोरिदम, देखेंगे सैंडर्स में लोगों की कुल संख्या। फिर क्योंकि, यह के रूप में हालांकि हर किसी को है के रूप में आप नीचे बैठे थे, अपने नंबर बंद पारित किसी और को, किसी और को, किसी और के लिए है, इसलिए कि सिद्धांत रूप में, अंत में, केवल एक अजीब व्यक्ति खड़ा छोड़ दिया जाना चाहिए। लेकिन वह ठीक है। हम चीजों को मैन्युअल उड़ गए। यह देखने के लिए विशेष रूप से मुश्किल है यह विशेष रूप से अंतरिक्ष में। और लोगों की कुल संख्या हम सोचते हैं कि वहाँ यहाँ हैं 546 है। कुल संख्या मैं सौंप दिया गया था शिक्षण साथियों द्वारा, जो इसे वर्ष किया स्कूल धीमी तरह, 820 थी। [हस रहा] [वाहवाही] ठीक है। तो निश्चित रूप से तब, वहाँ इन कीड़े हैं। और कहा कि ठीक है। और इसलिए इस पर वापस लगता है पहली बार कुछ आप लिखना जरूरी काम नहीं करता। यह मेरे लिए यहाँ के रूप में अच्छी तरह से हुआ है। लेकिन अब विचार है कि हम कैसे हो सकता है चलो कुछ करने के लिए यह एक ही विचार लागू तुम से पहले देखा हो सकता है, जो इस पुराने स्कूल प्रौद्योगिकी here-- है एक बहुत बड़ा फोन की किताब। और लगता है कि इस फोन की किताब 1,000 पृष्ठों और 1000 नाम है और वर्णानुक्रम के अंदर यह संख्या। खैर, हम किस तरह के एक समान लागू हो सकते हैं यह बहुत ही शारीरिक समस्या का विचार है, बस मुझे इस्तेमाल करते हैं। मैं बस की तरह धोखा दिया आप सभी के लाभ से बहुत से और अलग अलग CPU की बहुत सारी के साथ या दिमाग कुछ एल्गोरिथ्म को क्रियान्वित। लेकिन अगर यह सिर्फ छोटी है वर्ष मेरे, मैं अभी भी कर सकते हैं का लाभ उठाने के लिए एक विचार है कि एक ही सार विभाजन और है कि समस्या को जीतने का फिर और फिर, जिससे आप में से आधे, आप में से आधे, आप में से आधे, आप में से आधे, सैद्धांतिक रूप से नीचे बैठा रखा है, जब तक हम छोड़ दिया गया, सैद्धांतिक रूप से, सिर्फ एक ही व्यक्ति के साथ। इस पुराने स्कूल में तो technology-- हम नहीं यह इस map-- जरूरत पुराने स्कूल प्रौद्योगिकी, हम किसी की तलाश शुरू हो सकता है माइक स्मिथ, एक समय में एक पेज की तरह। और मैं देख रहा हूँ कि नहीं, माइक यहाँ नहीं है। मैं अभी भी एक खंड में हूँ। अंत में, मैं यह पाते हैं अपने आप को बी अनुभाग में। और यह एक algorithm-- है कदम-दर-कदम अनुदेश। शुरुआत और एक पृष्ठ पर शुरू एक समय में, माइक स्मिथ के लिए देखो। यह इस correct-- है एल्गोरिथ्म या दृष्टिकोण? हाँ, यह सही है। माइक यहाँ है, तो अंततः मैं उसे करने के लिए मिल जाएगा। लेकिन यह कारगर नहीं है। यह स्पष्ट रूप से बहुत धीमी है। तो मैं उत्तोलन कर सकते हैं एक ही twosies दृष्टिकोण। मैं दो की तरह कर सकते हैं, चार, छह, आठ, 10, 12। यह उपवास के रूप में दो बार है। मैं माइक को पाने के लिए जा रहा हूँ तेजी से अगर वह वहाँ है। क्या यह सही है? हाँ, लेकिन मैं एक little-- कोई सुना। अब मैं एक नहीं सुना। हाँ। वहाँ एक बग संभावित है। हो सकता है कि माइक बस गलती हो जाता है दो पृष्ठों के बीच बैठा, क्योंकि मैं के माध्यम से उड़ रहा हूँ एक समय में इस दो। तो कम से कम हम कुछ की जरूरत सशर्त तय की तरह। मैं कहना हे की जरूरत है, अगर मैं किसी जिसका मारा नाम, एक टी के बजाय एक एस के साथ शुरू होता है मैं बेहतर वापस कम से कम एक पेज दोगुना है। तो पहली बार में, लेकिन फिक्स छोटी गाड़ी। लेकिन हम में से कोई भी देखने के लिए जा रहे हैं एक 1000 पेज फोन के माध्यम से माइक स्मिथ एक समय में एक पेज की किताब। एक सामान्य व्यक्ति क्या करने जा रहा है? आप एस के लिए जाने के लिए जा रहे हैं, यदि आप पता था कि जहां एस। आप बीच करने के लिए मोटे तौर पर जाना हो सकता है या थोड़ा अंत की ओर टेढ़ी। और मैं यहाँ नीचे देखो और मैं एम अनुभाग में हूँ। लेकिन क्या आप जानते हैं अब इस समस्या के बारे में, हम जरूरी पहले नहीं पता था कि हम सब के साथ सिर्फ खुद की गिनती यों? खैर, माइक स्पष्ट रूप से चल रहा है पुस्तक के इस छमाही में होने की अगर वह यहाँ पर सब है, क्योंकि यह हल है। और इसलिए तुम बहुत dramatically-- कर सकते हैं [हांफते] मुझे पता है। [वाहवाही] यह वास्तव में बहुत आसान है अगर है आप इसे नीचे रीढ़ वहाँ से करते हैं। लेकिन तुम तो फेंक कर सकते हैं समस्या का आधा दूर। अब, मैं एक ही problem-- साथ छोड़ रहा हूँ एक फोन में माइक स्मिथ लगाने book-- लेकिन अब फोन की किताब एम में शुरू होता है और Z करने के लिए चला जाता है, लेकिन यह बड़ा के रूप में आधा है। लेकिन यह क्या प्रभावशाली है। सिर्फ सिद्धांत में, तुम लोग, जब की तरह आप सभी को एक समय में केवल आधा बैठ गए, समस्या, बड़े रूप में आधा मिला आधे के रूप में बड़ा है, बार-बार। इसलिए इस समस्या बन गया है एक ही समस्या है, लेकिन बड़े रूप में आधा। अब यह एक 250 पेज की समस्या है। जैसे ही मुझे पता है, ओह, मैं हूँ टी खंड गलती में। मैं बहुत दूर चले गए हैं। मुझे लगता है कि आधे से फेंक कर सकते हैं दूर फोन की किताब की। अब, मैं एक करने के लिए नीचे हूँ समस्या की तिमाही। और आप कर सकते हैं दोहराने, दोहराने दोहराने, जब तक सिद्धांत रूप में, आप कर रहे हैं सिर्फ एक पेज के साथ छोड़ दिया है। और अगर माइक उस पृष्ठ पर है, मैं अब इस समस्या का समाधान कर सकते हैं। लेकिन मैं यह कैसे जल्दी से हल किया? पहले मामले में, यह मुझे पसंद ले लिया शायद 1,000 कदम माइक स्मिथ खोजने के लिए। यह me-- ले सकता है मैं फोन की किताब उठाया और मैं तलाश शुरू कर दी एक समय में एक पृष्ठ, और माइक 1,000 पृष्ठों बाद में हो सकता है। दूसरा दृष्टिकोण हो सकता है मुझे 500 कदम उठा लेता है, क्योंकि मैं उड़ रहा हूँ एक समय में दो के माध्यम से। और तीसरा दृष्टिकोण हालांकि, यह विशेष रूप से शक्तिशाली है। लेकिन क्या हम वास्तव में विचार करते हैं इस तीसरे दृष्टिकोण के साथ किया था। मैं मैं सिर्फ ये क्या फोन करता हूँ होगा बयानों इधर, एक समय में एक। एक फोन की किताब उठाओ। फोन की किताब के बीच करने के लिए खोलें। नामों को देखो। और फिर एक छोटी चीजें मिल अधिक बौद्धिक रूप से दिलचस्प है, अगर अभी भी सरल है। स्मिथ के बीच है कि वर्तमान पृष्ठ पर नाम, फिर कुछ सशर्त से करते हैं। यह सड़क में एक कांटा की तरह है। माइक कहते हैं। माइक नामों के बीच है उस पृष्ठ पर, माइक बुलाया। लेकिन केवल लाइन चार करते हैं रेखा पेड़, अगर तुम जाएगा, सच है। इस सवाल का जवाब हाँ है। वरना यदि स्मिथ book-- में पहले है दूसरे शब्दों में, अगर मैं एम अनुभाग में हूँ और मैं किसी के लिए देख रहा हूँ छोड़ दिया, तो मुझे क्या करना चाहिए बहुत कुछ इसी तरह की है। तब मैं बीच करने के लिए खुला होना चाहिए किताब के बाईं आधे की। इसलिए छोड़ दिया जाना है, और उसके बाद दो कदम को वापस जाओ। वहाँ के नाम को देखो। तो दूसरे शब्दों में, एक ही बात कर लेकिन एक समस्या पर आधा कर दिया गया है कि। आप और क्या जानते हो? अगर स्मिथ की किताब में बाद में है पेज मैं देख रहा हूँ पर आधारित है, के बीच करने के लिए खुला पुस्तक के ठीक आधे और उसके बाद फिर से वापस जाने के लिए दो कदम, else-- वहाँ यहाँ एक चौथाई संभावना है। माइक या तो यहाँ या बाईं ओर या सही है या वहाँ नहीं करने के लिए। और यहाँ हम बेहतर इस पर विचार करें। और वास्तव में, यदि आप कभी मिला अपने कंप्यूटर सिर्फ आप पर दुर्घटना, कि कभी कभी होता है, लेकिन हमेशा नहीं, सिर्फ एक मानव प्रोग्रामर का परिणाम नहीं साकार, ओह गोली मार, वहाँ है वास्तव में यह चौथा परिदृश्य। और अगर आप कोड के बारे में नहीं है उस परिदृश्य को संभालने के लिए, कभी कभी आप नहीं जानते क्या कंप्यूटर कर सकता है। और वास्तव में एक कार्यक्रम दुर्घटना हो सकती है। लेकिन इस मामले में, मैंने सोचा इसके बारे में, और मैंने कहा, बाकी छोड़ दिया है, क्योंकि है कि चौथी है तार्किक संभव परिदृश्य। अब, चलो बस जोड़ दें इसलिए हम कुछ शब्दावली शब्दों के आसपास टॉस करने के लिए शुरू कर सकते हैं कि अन्यथा बहुत सहज हैं। सिर्फ बातें की सभी रहा है यहां पीले रंग में प्रकाश डाला, मैं बस करने के लिए जा रहा हूँ कार्यों या प्रक्रियाओं। वे कार्रवाई के बस की तरह कर रहे हैं। तो, खुला करने के लिए, देखो लेने पर, कॉल खुला, खुला, quit-- ये सिर्फ कार्रवाई कर रहे हैं, या हम करेंगे उन्हें और अधिक औपचारिक रूप से कहते हैं, कार्य करता है। इस बीच, अब पीले रंग में, मैं चीजों पर प्रकाश डाला है that-- चलो बस बुला शुरू करते हैं उन्हें स्थितियों या शाखाएं। ये निर्णय अंक कहाँ हैं आप इस तरह से जाना हो सकता है, इस तरह से, या कुछ अन्य दिशा में अभी भी। तो उन स्थितियों किया जाएगा। और अब यह एक छोटे से शौक़ीन है। इन सवालों का फोन करते हैं बूलियन अभिव्यक्ति, एक अंतिम नाम Bool के साथ किसी के बाद। और एक बूलियन अभिव्यक्ति सिर्फ कुछ है कि या तो सही है या गलत है, हाँ या नहीं। इसलिए यह सवाल जिसका आप जवाब है इसलिए एक शर्त के रूप में के बारे में परवाह है, एक decision-- एक जवाब वापस मिल कर, और फिर छोड़ दिया है या सही, या कुछ जाना कुल मिलाकर कुछ और। और फिर अंत में, इन लाइनों here-- वापस जाने के लिए दो कदम, वापस जाओ two-- कदम के लिए हम कर सकते थे अलग अलग तरीकों से इस विचार को लागू करने। और फिर आप उन लोगों के साथ प्रोग्रामिंग अनुभव किया होगा या अलग ढंग से इस काम को करने की कल्पना कर सकते हैं। लेकिन आज के उद्देश्यों के लिए है, यह सिर्फ विचार है कि मायने रखती है। इस उत्प्रेरण है क्या हम आम तौर पर फोन करता हूँ एक चक्र में किसी तरह का loop--, क्योंकि यह मुझे कुछ फिर से करना बना रहा है। तो अब, चलो बस पर विचार करते हैं कितना अच्छा यह एल्गोरिथ्म है। यह सही है। माइक की किताब में हैं, तो यह में से एक है उन चार बार बार scenarios-- और फिर, हम उसे मिल जाएगा। लेकिन यह कितना अच्छा है? खैर, हमारे पास नहीं है यहाँ भी औपचारिक हो। लेकिन हम सिर्फ साजिश करते हैं कुछ और, एक्स और वाई, पाने के लिए इस समस्या के आकार की भावना। एक्स अक्ष पर यहाँ है मेरी समस्या का आकार। और वे एक वाई अक्ष यहाँ समय हल करने के लिए किया जाएगा। तो शायद इस पृष्ठों की संख्या है। शायद यह सेकंड है या turns-- जो कुछ पेज। लेकिन अगर आप गिनती करना चाहते है क्या इस तस्वीर का प्रतिनिधित्व करेंगे। और कहा कि पहले एल्गोरिथ्म, मैं जा रहा हूँ बस एक सीधी रेखा में वर्णन करने के लिए। अगर वहाँ में एन पृष्ठों है फोन की किताब है, तो यह मुझे कई रूप ले सकता है n कदम के रूप में माइक खोजने के लिए। अगर Verizon या फोन कंपनी एक और पेज अगले साल के लिए कहते हैं यह मुझे ले सकता है एक और step-- समय की एक और इकाई माइक खोजने के लिए। तो वहाँ एक अनुपात करने के लिए सिर्फ इस एक है। यह एक सीधी रेखा ढलान है। इस बीच, है कि दूसरे algorithm-- अगर मैं कर रहा हूँ एक time-- दो पर दो जा रहा है, चार, छह, आठ, या double-- पृष्ठों के माध्यम से दो बार जा रहा एक समय में, एक समय में दो, यह अभी भी सीधी रेखा है। वहाँ अब दो के लिए एक से एक है अनुपात, लेकिन सिर्फ एक छोटे से कम है। तो अगर वहाँ यह कई पृष्ठों पीले रंग में चार्ट यहाँ पर, कि मुझे इस ले सकता है कई कदम या सेकंड, अन्यथा यह मुझे ले जा रहा है दो बार के रूप में लाल लाइन पर कई। लेकिन हरे रंग की लाइन वास्तविक उपलब्धि है। यह वही है जो हम आम तौर पर है एक logorithm-- कॉल लॉग n, जहाँ n पृष्ठों की संख्या है। लेकिन यह आकार है कि मायने रखती है आज हमारे पास नहीं है, क्योंकि यहां तक ​​कि अंक की साजिश रचने के बारे में सोचने के लिए। एक चरम परिदृश्य के बारे में सोचो। मान लीजिए Verizon कल डबल्स कि फोन की किताब में पृष्ठों की संख्या, 1,000 से 2,000। पहले एल्गोरिथ्म में, मैं एक अतिरिक्त 1,000 बर्बाद हो सकता है कदम माइक के लिए लग रही है, सिर्फ इसलिए कि Verizon पुस्तक के आकार दोगुना हो गया। यह algorithm-- दूसरा हो सकता है मुझे एक अतिरिक्त 500 कदम उठाए। 1,000 से अधिक पृष्ठों, मैं एक पर दो जाना माइक लगाने के लिए 500 और कदम time--। लेकिन यह है कि तीसरे एल्गोरिथ्म एक तरह से जादुई है। Verizon संख्या डबल्स 1,000 से 2,000 पृष्ठों की, लेकिन कितने अधिक कदम नहीं करता है यह मुझे ले माइक देखने के लिए? ऐसा नहीं है क्योंकि मैं सिर्फ कर सकते हैं बस एक है, फोन की किताब आंसू एक बार और एक करने के लिए एक 2000 पेज की समस्या से 1,000 पेज की समस्या है, और देखा। मैं इसे से बाहर एक बड़े पैमाने पर काटने ले लिया है। और तुम सच में चरम जाना है, लगता है कि फोन की किताब कंपनी की तरह पागल कुछ था एक 4 अरब पेज फोन की किताब। वैसे यह कितने कदम ले सकता है एक 4 अरब में माइक स्मिथ लगाने के लिए पेज फोन की किताब? यह एक बड़ी संख्या है, लेकिन सिर्फ 4 अरब 2 बिलियन करने के लिए 1 बिलियन 500 मिलियन करने के लिए, 250 million-- अभी भी बड़ी संख्या की तरह लगता है, लेकिन मैं बहुत जल्दी में हूँ छोटे मूल्यों के लिए हो रही है। और वास्तव में, गणित, तो मुझे क्या करना है ठीक है, मैं केवल विभाजित कर सकते हैं 4 अरब द्वारा मोटे तौर पर 32 बार से पहले मैं सिर्फ एक के लिए नीचे उतरो। तो अगर है कि फोन की किताब 4 थे अरब पृष्ठों लंबा है, कोई बड़ी बात नहीं। कुछ ही सेकंड के भीतर, शायद 32 सेकंड, मैं यह आधे में विभाजित कर सकता है और अंत में माइक या खोजने निष्कर्ष है कि वह वहाँ नहीं है। और कहा कि एक का सार है एक अच्छा एल्गोरिथ्म algorithm--। और यही से एक है इस तरह से एक वर्ग के लक्ष्यों, मैं कैसे कर यह पता लगाने की कोशिश कर रहा है समस्या सिर्फ सही ढंग से नहीं हल करते हैं, जैसे मैं हमेशा जानता था कि यह एक ऐसा करने के लिए कैसे एक time-- पर पेज लेकिन सही ढंग से और अच्छी तरह से। कैसे मैं अच्छा डिजाइन करते हैं समस्याओं के समाधान? तो चलो एक पल के यहाँ ले चलो और अब आप एक भावना दे CS50 के पाठ्यक्रम itself-- परिचय कुछ पाठ्यक्रम के स्टाफ के सदस्यों को। बस 2:00 से पहले, हम करेंगे एक छोटा ब्रेक लेने तुम उन है कि इतने जो खरीदारी कर रहे हैं कर सकते हैं बतख बाहर और एक को ले कुछ अन्य वर्ग को देखो और इस ऑनलाइन के बाकी देखने के लिए। लेकिन अब के लिए, मेरे परिचय CS50, वर्ग ही है, और विशेष रूप से क्या नया है। इसलिए पिछले वसंत, हम बिताए काफी time-- का एक सा पाठ्यक्रम के कर्मचारियों और I-- सोच यह क्या है के बारे में हम CS50 होना चाहते हैं, और पहली बार के लिए वापस जा सिद्धांतों, तो बात है, विचार करने के लिए यह क्या है हम चाहते हैं इस कोर्स की तरह लग रही है और होना करने के लिए अपने छात्रों के लिए की तरह। और तो आप समस्या में देखेंगे शून्य सेट के रूप में अच्छी तरह से, एक निमंत्रण उस पर एक नज़र लेने के लिए जो यूआरएल का सार पीछे की मंशा के कुछ गिरावट 2016 की विशेषताओं के बाद। तो जैसा कि आप gleaned हो सकता है टीएल से: डॉ थिसिस, पाठ्यक्रम के रूप में आज अच्छी तरह से के रूप में पाठ्यक्रम सूची, CS50 में इस साल आप केवल भाग लेने की उम्मीद कर रहे हैं इतनी अच्छी तरह से काम today-- done-- और 21 नवंबर को आखिरी व्याख्यान। और आप का स्वागत है, लेकिन करने के लिए की उम्मीद नहीं कर रहे हैं बीच में उन व्याख्यान में भाग लेने, हम क्या कर रहे हैं, क्योंकि इस साल, शूटिंग कर रही है वास्तविक समय पाठ्यक्रम की सामग्री में। इतना सब कुछ रहना होगा वर्तमान और शामिल सबसे अच्छा के रूप में हम वर्तमान घटनाओं can-- और बातचीत है कि लोगों को हो सकता है में उद्योग में होने जा दुनिया है, लेकिन है कि सामग्री बनाने उपलब्ध है, एक परिणाम के रूप में, यहां तक ​​कि earlier-- पूरा टेक्स्ट टेप के साथ पूरा करें और searchability और अन्य संसाधनों से जोड़ता है। और वास्तव में, हम किया गया है कुछ समय के लिए दावा और अब हम इस पर विश्वास करते हैं, कि हम बना सकते हैं, डिजिटल, एक अधिक immersive, एक और अधिक सम्मोहक शैक्षिक अनुभव, के रूप में विरोध यहाँ कुछ 23 बार सभा करने के लिए व्यक्ति में, सुनवाई कोई मुझे पसंद है बस कंप्यूटर विज्ञान के बारे में बात करते हैं, के रूप में अधिक सक्रिय रूप से संलग्न करने का विरोध किया। तो आप कोर्स के सिलेबस में देखेंगे सेमेस्टर का एक स्केच यहाँ, साथ जब व्याख्यान होगा साथ फिल्माया जा सकता है, जो आप कर रहे हैं करने के लिए आपका स्वागत है, लेकिन उम्मीद नहीं, और जब वे जाएगा पाठ्यक्रम की वेबसाइट पर जारी किया। और हम यहाँ पर क्या करेंगे अगले हफ्ते शुरू बुधवार, एक बहुत ही साथ अधिक परिचित है, उन लोगों को जो भाग लेने के लिए चाहते हैं, एक तथाकथित चलने के माध्यम से है, मैं कहाँ और पाठ्यक्रम के सिर वास्तव में बातें कर देगा एक छोटे से अधिक अंतरंग यहाँ नीचे ऑर्केस्ट्रा में अनुभाग, अभी भी कुछ प्रौद्योगिकी है और के माध्यम से चलना वर्तमान सप्ताह की समस्या सेट, और आप के बीच में यदि particularly-- की पेशकश करते हैं उन कम comfortable-- सभी को और अधिक मार्गदर्शन है कि आप चाहते हो सकता है या सप्ताह की चुनौती के लिए की जरूरत है। और इसी प्रकार, उन लोगों के लिए जो नहीं कर सकते व्यक्ति में उन लोगों के, कोई बड़ी बात में भाग लेने। वहाँ इसी तरह के नेतृत्व में किया जाएगा पाठ्यक्रम के वरिष्ठ कर्मचारियों में से एक, Zamalya, समान अवसर एम्बेडेड समस्या में खुद को निर्धारित करता है। समस्या इस साल सेट शुक्रवार को जारी किया जाएगा और अब सात दिन बाद करते हैं, लेकिन 10 दिनों later-- जानबूझ हर समस्या के साथ अतिव्यापी , इतना तय है के रूप में बेहतर समायोजित करने के लिए, हम आशा करते हैं, भाटा और प्रवाह छात्र कार्यक्रम में, खासकर जब midterms या एथलेटिक्स या शिक्षाविदों या extracurriculars आने और जाने के लिए करते हैं विशेष रूप से मध्य सेमेस्टर। यही कारण है कि आप एक छोटे से अधिक देना चाहिए आप चाहे सामने करने के लिए के रूप में विवेक CS50 या वापस भार के साथ अपने सप्ताह लोड यह निम्नलिखित सप्ताहांत के बजाय पर। तो पाठ्यक्रम के पाठ्यक्रम के लिए देखो यहां उसके कार्यक्रम के लिए। और आप के बीच भी नोटिस देंगे परिवर्तन इस साल साथ अधिक परिचित लोगों के लिए अतीत में प्रोग्रामिंग, हम के रूप में सेमेस्टर शुरू करेंगे हम खरोंच में आज होगा, भाषा पर विशेष रूप से ध्यान केंद्रित सी कहा जाता है, और फिर नहीं संक्रमण PHP के लिए है, लेकिन कहा जाता है एक भाषा के लिए सेमेस्टर के अंत में अजगर वेब प्रोग्रामिंग के संदर्भ में, एसक्यूएल और जावास्क्रिप्ट के साथ-साथ, एचटीएमएल, सीएसएस, और अभी तक अधिक है। और एक सवाल के जवाब में, यह वास्तव में मामला है सीएस एक बार मैं के रूप में के रूप में डरावना नहीं है कि सोचा था, लेकिन यह रूप में ज्यादा काम है जैसा कि मैंने सुना था कि यह हो सकता है। लेकिन यह कहना कि यहाँ कुछ कर रहे है पतन 2015 छात्र शरीर से आँकड़े, जिससे क्षैतिज नीली लाइनों घंटे की औसत संख्या का प्रतिनिधित्व की सूचना दी। और तुम में से एक औसत देखेंगे 10 को छह शायद 16 12-- करने के लिए या तो और बहुत आगे है, लेकिन साथ उच्च विचरण स्पष्ट होना। और तो वहाँ न केवल यह है कि एहसास छात्रों को और अधिक आराम से और कम पाठ्यक्रम में आरामदायक है, लेकिन एक इसी समर्थन संरचना उन छात्रों को पाने के लिए सेमेस्टर सफलतापूर्वक के माध्यम से। दरअसल, एक सवाल के जवाब में, चाहिए आप एक प्रथम वर्ष के रूप में CS50 ले लिया है? पूर्ण रूप से। और वास्तव में, मैं अफसोस है अपना रास्ता नहीं मिला या एक नया क्षेत्र में पाया गया के रूप में अच्छी तरह से है कि पहले साल। और आप के साथ CS50 लेना चाहिए निश्चित रूप से well-- के रूप में अन्य पाठ्यक्रमों, और सामान्य सलाह हम हो सकता है छात्रों को देने, कि CS50 शायद है वर्ग या परिचय वर्ग की तरह नहीं कि आप तीन के साथ लेना चाहिए अन्य या चार अन्य पी-सेट वर्गों। लेकिन तुम दो अन्य पी-सेट ले जा रहे हैं कक्षाएं, कुछ और, और CS50, बिल्कुल प्रबंधनीय। मैं कई छात्रों को मिला है पिछले काफी सफलतापूर्वक ऐसा किया। और कहा कि आप की ओर पाने के लिए लाइन सफलतापूर्वक समाप्त, sections-- पाठ्यक्रम है छात्रों के लिए अलग पटरियों कम, आराम से और अधिक आरामदायक, और बीच में कहीं न कहीं, जिससे पाठ्यक्रम में पहली समस्या सेट, यदि आप अपने आप का वर्णन करने के लिए कहा जाएगा। और अगर आप उन कम में से एक हैं आरामदायक, यह बात की तरह है आप सिर्फ इतना पता है कि नहीं बल्कि। और वास्तव में, कि हो गया है CS50 में जनसांख्यिकीय बढ़ रही है काफी कुछ वर्षों के लिए। के लिए पिछले गिरावट के रूप में उदाहरण के लिए, वर्ग के 58% खुद के रूप में वर्णित कम आराम से उन लोगों के बीच, उन अधिक बीच 9% के साथ आरामदायक, और उसके बाद वहाँ अन्य छात्रों लाल को खुद का वर्णन के रूप में बीच में कहीं। और तुम यहाँ विषयों समग्र देखेंगे और वर्गों की अनुसूची, जो सभी के लिए में, व्यक्ति में पेशकश कर रहे हैं पाठ्यक्रम के साथ वास्तविक समय, शिक्षण साथियों की अद्भुत स्टाफ और निश्चित रूप सहायकों, जिनमें से कुछ आप बस एक पल में मिलेंगे। खुद को धारा, जैसा कि आप देखेंगे, होगा सोमवार और मंगलवार और बुधवार होना, तो जैसा कि आप गोता करने के लिए अनुमति देने के लिए में आकर्षक, यदि आप ऐसा करने के बाद चुनते हैं, पाठ्यक्रम के दशक में इससे पहले कि सप्ताह व्याख्यान। और फिर कार्यालय घंटे, जो निश्चित रूप से, हर बीतते साल के साथ, एक की भी कम नहीं किया गया है पाठ्यक्रम के लिए चुनौती है। और इस साल, हम न योजना बना रहे हैं केवल एक कार्यालय hours-- धारण करने के लिए के लिए मदद के लिए एक अवसर पर बुधवार को गुरुवार को छात्रों और रविवार, उन के अंतिम डिजाइन द्वारा दोपहर में किया जा रहा है तनाव से कुछ कम करने के लिए कि निरपवाद रूप से देर रात के साथ उठता है एक समय सीमा के साथ पी settting looming-- लेकिन कार्यालय समय भी पेशकश की जाएगी सोमवार और मंगलवार और बुधवार और शुक्रवार और शनिवार को, एचएसए पर हमारे मित्रों के लिए धन्यवाद। CS50 अब अपनी खुद की जगह है छात्रों और कर्मचारियों के लिए CS50, 67 माउंट ऑबर्न स्ट्रीट के ऊपर, सही वहाँ हार्वर्ड स्क्वायर में। दृष्टि जिसके लिए कि CS50 की है TFS और कैस हफ्ते भर में, सबसे भर में बहुत ज्यादा दिन, समर्थन के लिए नहीं होगा। तो अगर तुम मिल गया है कुछ एक पी सेट पर सवाल या आप एक छोटे से महसूस कर रहे हैं अवरुद्ध या एक छोटे से उलझन में है, और बिल्ली, आप एक घंटे में मिल गया है या वर्गों के बीच आधे घंटे, विशेष रूप से square-- में कर सकते हैं आप पॉप और उस सवाल का जवाब है का है कि भ्रम की स्थिति है clarified-- भावना में बहुत ज्यादा है, यदि आप गणित की, परिचित हैं विभाग की अपनी गणित सवाल केंद्र, लेकिन प्रति घड़ी के आसपास बहुत ज्यादा [? Gcal?] कि हम ऑनलाइन पोस्ट करेंगे। ट्यूशन भी उन लोगों के लिए उपलब्ध है छात्रों, पाठ्यक्रम के लिए स्वतंत्र रूप से अपने स्टाफ यदि आप चाहते हैं अधिक घनिष्ठ एक पर एक, या केवल दो या तीन सहपाठियों, काम पाठ्यक्रम के स्टाफ सदस्यों में से एक के साथ। और वास्तव में, इन यहां बस रहे हैं पाठ्यक्रम के स्टाफ सदस्यों में से कुछ, जिनमें से कुछ तुम हूँ बस एक पल में मिलते हैं। वास्तव में, CS50 की खुद की सिर शिक्षण साथी, और सिर पाठ्यक्रम सहायक, और गुरू, अप पर आ सकता है, की अनुमति उन्हें नमस्ते कहने के लिए। [वाहवाही] स्पीकर 1: [सुनाई]। [वाहवाही] वक्ता 2: [सुनाई]। [वाहवाही] स्पीकर 3: [सुनाई]। [वाहवाही] डेविड मालन: और हमें करने की अनुमति CS50 के दो बोर्ड पर लाने के सबसे वरिष्ठ स्टाफ, रोब और Zamayla के रूप में अच्छी तरह से। [वाहवाही] दरअसल, दोनों रोब और Zamayla हमारे साथ रहे हैं इतने लंबे समय के लिए, मैं कर रहा था कि CS50 के अभिलेखागार में जाने के लिए और पाते हैं यह बहुत ही एसडी उनमें से फुटेज भाग लेने कुछ साल पहले चरण के लिए खुद पर। रोब: [सुनाई]। [वाहवाही] ZAMAYLA: [सुनाई] [वाहवाही] डेविड मालन: धन्यवाद। इसलिए इन के अलावा यहां टीम के सदस्यों, CS50 लगभग 100 की एक टीम है स्टाफ के सदस्यों, जिनमें से सभी वर्गों के लिए उपलब्ध हो जाएगा और कार्यालय समय और इतना अधिक। और रोब भी कहते हैं, यह है सबसे महत्वपूर्ण ओवरहाल 10 साल में CS50 की है कि मैं [सुनाई] में किया गया है। [सुनाई] विशेष रूप से ध्यान केंद्रित एक संरचना का समर्थन प्रदान करने में, दूर का एक बहुत trimming थोक कि हो गया है 10 साल में संचित के चलने के घटनाक्रम पाठ्यक्रम की समस्या सेट पर। तो इस साल ही नहीं, कक्षा में लेकिन यह भी पाठ्यक्रम की समस्या के रूप में सेट, आप के लिए चीजों को खोजने चाहिए और अधिक सुव्यवस्थित हो, trimmer, ज्यादा की तुलना में अधिक प्रबंधनीय पिछले कुछ वर्षों में, हम के रूप में सामान है कि कुछ बहाने उभरती साल की प्रकृति द्वारा विकसित साल और दोहराने के बाद। इसलिए नए और बेहतर आज शुरू होता है। आप में से कुछ अधिक मिलेंगे में [सुनाई] पाठ्यक्रम के कर्मचारियों को बाहर 2:30, जहां हम सेवा में, एक परंपरा, केक के रूप में। वहाँ थोड़ा और अधिक केक है उस के अलावा, लेकिन तुम हूँ मिलिए आयलैंड और टोबियास और दूसरों को भी। और मुझे तुम दे एक दौरे से पहले हम सुनते अन्य स्टाफ के सदस्यों में से कुछ से वर्ग, क्या और साथ ही इंतजार कर रहा है की में। वास्तव में, हम हमेशा CS50 के शुरू सेमेस्टर यह आने वाले शनिवार, साथ क्या CS50 पहेली डे कहा जाता है। इसके साथ कुछ नहीं करना है कंप्यूटर विज्ञान प्रतिशत से, लेकिन के बारे में समस्या के साथ अधिक आम तौर पर सुलझाने। और तुम इतना हिस्सा लेना करने के लिए चुनते हैं, निमंत्रण के कुछ प्रति, आप दरवाजा देखा हो सकता है गिरा या यहां मंच पर, यह टीमों में एक अवसर है दो या तीन या चार की, पहेली और पिज्जा के लिए भाग लेने के लिए और पुरस्कार और more-- इस शनिवार, अधिक जानकारी के लिए देखते रहें। तुम भी है कि हर मिलेगा शुक्रवार, आग और बर्फ पर, CS50 एक लाना है छात्रों की पूरी गुच्छा दोपहर का भोजन करने के लिए, एक बड़ी बनाने के लिए वर्ग अधिक घनिष्ठ लग रहा है, और आम तौर पर एक साथ लाने के पूर्व छात्रों और उद्योग से मित्र वे क्या है के बारे में बात करने के लिए स्नातक होने के बाद से अप करने के लिए किया गया। इसी तरह, इस साल, हम करेंगे उद्घाटन पहले कभी CS50 50 contest-- कोडिंग एक मध्य सेमेस्टर हर किसी को अनुमति देने के लिए अवसर आधार में एक ऑप्ट पर, एक के लिए है सहपाठियों के खिलाफ बुद्धिमत्ता की चुनौती है, फिर दो या तीन या की टीमों में चार, केवल यह है कि प्रोग्रामिंग का उपयोग प्रेमी तुम तो अधीन है सिर्फ छह या सात के बाद अपनी बेल्ट वर्ग के सप्ताह, और भाग लेने वाले प्रतियोगिता के इस प्रकार में online-- आप अपने खुद को सुधारने के लिए करना चाहते हैं कौशल है कि सभी चुनौती में अधिक है। सेमेस्टर के अंत में है तथाकथित CS50 Hackathon-- एक अवसर है कि 7:00 पर शुरू होता है PM 7:00 पर समाप्त होता है, और जिस तरह से साथ जिसमें गोता करने के लिए 12 घंटे शाम हैं पाठ्यक्रम के अंतिम project-- में एक अवसर के लिए डिजाइन और ब्याज की सबसे कुछ को लागू आप अपने शिक्षण के साथ करने के लिए साथी के मार्गदर्शन। चारों ओर 9:00 रहा हूँ कि हम आम तौर पर कर पिज्जा, 1:00 AM सेवा करते हैं, फिलिप, और हम में से कुछ जो अभी भी 5:00 AM जाग रहे हैं, शटल हैं नीचे bussed नाश्ते के लिए IHOP के लिए सड़क। और फिर कुछ दिनों बाद तथाकथित CS50 है fare-- में सेमेस्टर प्रदर्शनी का एक अंत अभी तक कैसे इतने सारे के जश्न CS50 के छात्रों से आए हैं सप्ताह शून्य सप्ताह के लिए सभी तरह, और ध्यान में रखते हुए कि उन लोगों में से 73% सहपाठियों और तुम्हारा इस साल इससे पहले एक सीएस वर्ग कभी नहीं लिया। वास्तव में, के रूप में ज्यादा reemphasize करने के लिए, यहाँ CS50 के कर्मचारियों से कुछ ही अधिक चेहरे है। स्पीकर 4: [सुनाई]। स्पीकर 5: [सुनाई]। स्पीकर 6: [सुनाई]। स्पीकर 7: [सुनाई]। स्पीकर 8: [सुनाई] अध्यक्ष 9: [सुनाई]। स्पीकर 4: [सुनाई]। अध्यक्ष 10: [सुनाई]। अध्यक्ष 11: [सुनाई]। अध्यक्ष 12: [सुनाई]। अध्यक्ष 13: [सुनाई] अध्यक्ष 14: [सुनाई]। अध्यक्ष 13: [सुनाई]। अध्यक्ष 15: [सुनाई] अध्यक्ष 16: [सुनाई]। अध्यक्ष 11: [सुनाई] स्पीकर 5: [सुनाई]। डेविड मालन: टीम के कुछ खुद को कक्षाओं में खरीदारी कर रहे हैं। लेकिन उन सदस्यों यदि CS50 स्टाफ की यहाँ हैं, अप पर आ सकता है बस एक पल के लिए। CS50 के TFS और कैस और [? स्टाफ़ ?] सदस्यों को इन बस कुछ here-- जिनमें से एक की faces-- तुम बस देखा, और कुछ other-- और कुछ अन्य लोगों फिर भी। क्यों हम आगे जाना है और अनुमति नहीं देते तुम लोगों को एक से पांच मिनट का ब्रेक। आप के लिए बाहर बतख के लिए की जरूरत है दुकान कक्षाएं, वह ठीक है। और पाँच मिनट में, हम, फिर से शुरू करेंगे Scratch-- पहली पर एक नज़र लेने हमारे प्रोग्रामिंग भाषा की, सफर पाठ्यक्रम के कर्मचारियों यहाँ कुछ और, और अंत में ध्यान केंद्रित समस्या पर शून्य की स्थापना की। तो हम पांच मिनट में वापस हो जाएगा। [वाहवाही] ठीक है। इसलिए हम वापस आ रहे हैं। और हमारे शेष समय आज, लक्ष्य खेल मैदान के स्तर के लिए है कुछ शब्दावली के संदर्भ में, कुछ विचारों के संदर्भ में। वास्तव में क्योंकि, के अनुसार पहले चार्ट के कुछ, वहाँ की एक श्रृंखला होने जा रहा है वर्ग में अनुभव के स्तर, के कुछ जिसका छात्रों की है इससे पहले कि कुछ प्रोग्रामिंग लिया, जिनमें से कुछ नहीं होता है। और इसलिए इस समस्या से पहले सेट और यह पहली भाषा के साथ हम शुरू करने के लिए एक अवसर है आज के बाद दी लेने के लिए कुछ आम शब्दावली और विचार है। और हम के माध्यम से इस करूँगा पाठ्यक्रम की पहली languages-- सी और अजगर और इसके अलावा में जावास्क्रिप्ट और एसक्यूएल और एचटीएमएल और सीएसएस, हम शुरू में ध्यान केंद्रित किया जाएगा और इस समस्या को शून्य सेट सिर्फ इस चित्रमय भाषा पर कहा जाता है, स्क्रैच, एमआईटी मीडिया लैब द्वारा विकसित सड़क के नीचे, मदद करने के लिए छात्रों और बच्चों को विशेष रूप से खुद को अभिव्यक्त algorithmically-- एक तरीका क्या साथ और अधिक सुसंगत में हम कम्प्यूटेशनल सोच बुला सकता है। और इसकी वजह यह एक उपयोगी भाषा है बहुत जल्दी एक सप्ताह में अगले सप्ताह, हम एक और अधिक करने के लिए संक्रमण करते कहा जाता पारंपरिक और रहस्यमय भाषा सी, जो विशुद्ध रूप से शाब्दिक है। आप केवल अपने कीबोर्ड का उपयोग आदेश निर्देश लिखने के लिए स्क्रीन पर इस तरह के। लेकिन फिर भी अगर आप कभी नहीं देखा है पहले एक प्रोग्रामिंग भाषा है, सिर्फ पर glancing में यही नहीं, यह सब गुप्त हो सकता है, आप शायद अनुमान लगा सकते हैं कि शायद नमस्ते विश्व प्रिंट। लेकिन वहाँ की एक बहुत कुछ है वहाँ वाक्यात्मक उपरि। वहाँ अजीब हैश है शीर्ष अप प्रतीक या हैश टैग। वहाँ कोण कोष्ठक है, कुछ कोष्ठक, घुंघराले ब्रेसिज़, अर्द्ध colon-- वहाँ सिर्फ इतना दृश्य वाक्य रचना है कि रास्ते में हो जाता है। हम साथ पाठ्यक्रम शुरू इतनी के रूप में पाने के लिए स्क्रैच उन सभी के अतीत बौद्धिक शुष्क distractions, और विचारों पर ध्यान देने के बजाय। वास्तव में, इस से पहले हो सकता है। यह इस बात के लिए, सप्ताह के बाद किया जाएगा। यह इस चित्रमय में भाषा स्क्रैच, आप कैसे है कि एक ही लागू होता है कि जब चलाए जा रहे एक कार्यक्रम program--, बस नमस्ते दुनिया कहते हैं। और क्या अच्छा के बारे में खरोंच है यह इस चित्रमय प्रोग्रामिंग है कि पर्यावरण पहेली टुकड़े या उपयोग करता है ब्लॉक, कि केवल एक साथ गूंथ अगर यह तार्किक समझ में आता है ऐसा करने के लिए। और खरोंच के साथ आप विकसित कर सकते हैं एनिमेशन और इंटरैक्टिव खेल और कला, और चीजों के किसी भी संख्या को आप अपने मन में कल्पना कर सकते हैं, और उन्हें बस से लागू खींचने और पहेली टुकड़े छोड़ने। और वास्तव में, हम क्षमता होगा एक ही विचारों में से कुछ व्यक्त करने के लिए मैं बस एक पल का उल्लेख किया है कि पहले माइक स्मिथ के संदर्भ में और खोज एक फोन book-- बातों कार्यों की तरह, सिर्फ कार्रवाई, छोरों कर इस तरह बातें बार-बार बातें, चर, जो है कुछ हम मिलवाता हूँ, लेकिन इसमें से शायद परिचित है बीजगणित सिर्फ प्लेसहोल्डर किसी तरह का तुम हो सकता है कुछ मूल्य की दुकान later-- बूलियन अभिव्यक्ति की जरूरत है, जहां उन हां नहीं या सच पहले से झूठी प्रश्न। शर्तों में उन कांटे हैं road-- उन शाखाओं तो बात है। और फिर वहाँ कुछ शौक़ीन हैं सुविधाओं में हम आज भी देखेंगे, कहा जाता है सरणियों और धागे और घटनाओं, हम तो खत्म हो जाएगा कि फिर से आना अलग-अलग भाषाओं में समय है। लेकिन स्क्रैच हमें की अनुमति देता है इन सभी का पता लगाने के लिए। तो खरोंच में यहाँ, इस बैंगनी ब्लॉक क्या एक समारोह में आम तौर पर होता है की तरह लग रहा। इस बैंगनी पहेली टुकड़ा कुछ है शब्द की तरह कहते हैं, जो कार्रवाई की है, और फिर यह एक हो सकता है तर्क या एक parameter-- किसी तरह अनुरूपण की तरह का क्या है कि ब्लॉक करता है इतना है कि यह द्वारा पूर्व-निर्धारित नहीं किया गया है एमआईटी क्या इस बैंगनी ब्लॉक कहते हैं। वास्तव में, आप एक में देखेंगे पल है कि मैं टाइप करने में सक्षम हूँ हैलो दुनिया की तरह शब्द, या हैलो डेविड, या नमस्ते Zamayla, या जो कुछ भी मैं चाहता हूँ, तर्क में उस पहेली को सफेद बॉक्स piece-- क्या आप वहां मौजूद हैं। इस बीच, अगर मैं एक पाश चाहते हैं, हम करेंगे देखना है कि वहाँ पहेली टुकड़े कि इस तरह एक छोटे नारंगी देखो। और उनके आकार प्रकार का पता चलता है कि कुछ फिर से और फिर से होता है एक चक्र में। तो अगर मैं एक का कहना है कि दुनिया ब्लॉक हैलो लपेटो स्क्रैच में हमेशा के लिए ब्लॉक के साथ, यह सिर्फ नमस्ते कह रखने के लिए जा रहा है दुनिया हमेशा के लिए, काफी का शाब्दिक। इस बीच, वहाँ एक और है खरोंच में पाश के प्रकार कि हम एक दोहराने see-- करेंगे block-- जहां, तुम अगर पहले से पता नहीं कितनी बार आप पाश अमल करना चाहते हैं आप fact-- में समय की एक निश्चित संख्या एक नंबर टाइप करके उस निर्दिष्ट कर सकते हैं या यहां तक ​​कि, एक चर में plugging एक्स या वाई के रूप में हम देखेंगे की तरह। वास्तव में, चर की तरह इस मामले में मैं जो एक के लिए एक आम नाम है पूर्णांक चर कि सिर्फ एक संख्या-भंडार एक पूर्णांक हो सकता है, करने के लिए यहाँ इस नारंगी ब्लॉक का उपयोग करने के लिए मैं शून्य करने के लिए की तरह एक चर सेट। यहाँ एक के हरे रंग में एक उदाहरण है खरोंच में बूलियन अभिव्यक्ति। यह एक गणित की तरह लग रहा है, भले ही सूत्र, इस तरह से गणित असमानताओं वास्तव में बूलियन अभिव्यक्ति कर रहे हैं। यह या तो सही है या गलत है। मैं 50 से कम है। यह या तो एक हाँ या कोई जवाब नहीं है या सही है या गलत जवाब है। और हम आम तौर पर फोन करता हूँ उन बूलियन अभिव्यक्ति। और यह 50 होना जरूरी नहीं है। यह y से कम X हो सकता है, Y से अधिक है, y-- के बराबर अन्य के किसी भी संख्या सवाल पूछा जा सकता है। अब, पहली नज़र में, यह लग सकता है अचानक काफी बोल्ड यहाँ है, और यह है। लेकिन अवधारणा लिहाज से, यह है बहुत पहले से परिचित। यदि x y की तुलना में कम है, की तुलना में ज्यादा के रूप में कहते हैं। वरना अगर एक्स अधिक है Y से, तो उतना ही। वरना कहना एक्स वाई के बराबर है। इसलिए हम एक उदाहरण है एक तिहाई scenario-- की वहाँ केवल तीसरे possibility-- एक्स या तो है से अधिक है, की तुलना में कम है, या बराबर है। तो हम सड़क में एक तीन तरह कांटा है। और नोटिस शांत here-- खरोंच है क्या, यह प्रतीत होता है सिर्फ एक पहेली है टुकड़ा, इस मामले में, अगर और ब्लॉक में। और फिर भी यह है कि आप मतलब प्रतीत होता है सकते हैं केवल सड़क में एक तरह से दो कांटा है। आप छोड़ा जा सकते हैं या सही, लेकिन क्या है कि तीसरे परिदृश्य के बारे में? क्या होगा यदि एक्स वाई के बराबर होती है? कोई बड़ी बात नहीं। एक पहेली टुकड़ा ले लो, डाल इसके बारे में एक और एक के अंदर अर्थ समकक्ष बनाने के लिए के हैं, और अगर, else-- और अब आप सड़क में अपने तीन तरह कांटा है। और जैसा कि हम देखेंगे, स्क्रैच पहेली टुकड़े बढ़ाया और बढ़ने जा सकता है, तो के रूप में उन में अधिक सामान रटना करने के लिए। आप फिट करने की जरूरत नहीं है उसके डिफ़ॉल्ट आकार में सब कुछ। यह कुछ हम करेंगे जल्द ही मिलते हैं एक सरणी कहा जाता है। यह एक list-- का कोई रास्ता की तरह है जानकारी के कई टुकड़े के भंडारण एक चर में, न सिर्फ एक संख्या है। ये हम के एक प्रतिनिधि देखेंगे कुछ बहु सूत्रण बुलाया। वास्तव में, सभी के अपने Macs और पीसी के इन दिनों बहु सूत्रण का समर्थन है, जिसका मतलब है कि तुम सचमुच कर सकते हैं एक समय में कई बातें करते हैं। आप ने माइक्रोसॉफ्ट वर्ड अप हो सकता है अग्रभूमि, कुछ निबंध पर काम कर। आप एक ब्राउज़र हो सकता है पृष्ठभूमि में उद्घाटन जी-मेल या फेसबुक या पसंद है। आपके कंप्यूटर को कई बातें कर सकते हैं आज क्योंकि यह बहु लड़ी, और कार्यक्रमों में वे कर रहे हैं विशेष रूप से यह भी बहु पिरोया जाता है। वहाँ चीज़ें बुलाया घटनाओं के रूप में है अच्छी तरह से स्क्रैच की दुनिया में, और फिर वहाँ एक रास्ता भी है, बनाने के लिए हमारे स्वयं के कस्टम पहेली टुकड़े बातें अगर वास्तव में अग्रिम में मौजूद नहीं है। तो चलो इस के लिए प्रेरित प्रकार के रूप में करते हैं। कुछ साल पहले, जब मैं पहला, स्क्रैच की खोज जब मैं वास्तव में था एक एमआईटी में स्नातक छात्र, हम खुद होमवर्क बनाने के लिए काम सौंपा गया। और मैं implemented-- जो पीछे मुड़कर देखें, एक बहुत ही गरीब फैसला था क्योंकि यह दुनिया में सबसे क्रुद्ध करनेवाला गीत आठ घंटे के लिए सुनने के लिए जबकि अपने homework-- पर काम लेकिन कुछ है जो मैं ऑस्कर समय कहा जाता था, जो शायद एक परिचित गीत है। CS50s ही जॉर्डन हयाशी, में से एक हमारे अधिक वरिष्ठ स्टाफ के सदस्यों, 2015 के लिए यह उन्नयन किया गया है और अब 2016, दिन में वापस के बाद से, मैं सब कुछ था बस जा ऑस्कर कचरा कर सकते में। अब हम रीसाइक्लिंग और खाद समर्थन करते हैं। लेकिन तस्वीर रंग की हम यहाँ क्या कर सकते हैं और कुछ प्रेरित करने के लिए निचले स्तर के उदाहरण हैं, हम एक दूसरे को मिल सकता है स्वयंसेवक बस छोड़ पर आने के लिए और मेरा पहला नाटक होमवर्क काम कभी? ऊपर आ जाओ। तुम्हारा नाम क्या है? हेनरी: हेनरी। डेविड मालन: हेनरी, पर आते हैं। ऊपर आ जाओ। किसी भी तरह से सिर, और आप एक पल में देखेंगे, मैं आगे जाने के लिए जा रहा हूँ और हिट शीर्ष दाहिने हाथ में हरे रंग का झंडा कोने, जिसका अर्थ है जाना। थोड़ा बंद हस्ताक्षर आइकन स्टॉप कहने जा रहा है, और है कि जब आप शुरू और इस कार्यक्रम को बंद करो। आपसे मिलकर अच्छा लगा। ठीक है। इसलिए हम निर्देश देखने के लिए जा रहे हैं बस एक पल में स्क्रीन पर। और बस के द्वारा इस खेल को खेलने के लिए एक मुझ पर भरोसा seconds-- कुछ, हम खेलना चाहते करने के लिए नहीं जा रहे हैं end-- आप करेंगे के लिए सभी तरह क्या कार्यक्रम है की भावना हो। और अधिक से अधिक सिर्फ हेनरी पर ध्यान केंद्रित अच्छा या इस खेल, ध्यान पर बुरा किया जा रहा है और कैसे यह मेरे द्वारा लागू किया गया था मूल रूप से और उसके बाद जॉर्डन के द्वारा। दूसरे शब्दों में, जहां चर रहे हैं? कहाँ छोरों रहे हैं? कहाँ कार्य कर रहे हैं? और हम देखेंगे कि अगर हम नहीं देखते हुड के नीचे थे। बस क्लिक करें और कचरा खींचें उचित बिन करने के लिए। [संगीत बजाना] ठीक है। वह बहुत अच्छा है। हम यह क्यों वहाँ रोक नहीं है। धन्यवाद। हेनरी को बधाई। धन्यवाद। [वाहवाही] बस ऐसे ही कार्यक्रम डिबगिंग कल्पना। अगर वहाँ एक समस्या है दो song-- लेकिन इतना मिनट में यहाँ क्या वास्तव में हो रहा है? यह हो सकता है के रूप में जटिल रूप में समय के साथ पाने के लिए प्रतीत शुरू करते हैं, वास्तव में अधिक से अधिक सामान गिरने शुरू कर दिया, क्या बारे में दिलचस्प है example-- के इस तरह के और हम कुछ देख लेंगे others-- है कि अगर आप जटिलता पिछले देखो या खेल के परिष्कार, वहाँ एक बहुत ही साधारण इमारत है ब्लॉक कि जो सभी के play--, अगर आप उन्हें उन लोगों के लिए गढ़ने इमारत ब्लॉकों, बहुत सुलभ हैं और स्वयं के इधार कार्यान्वयन। उदाहरण के लिए, यह है कुछ समय हो गया है, लेकिन मैं कर रहा हूँ पूरा यकीन है कि क्या मैं शुरू में जब किया पहली बार के लिए इस खेल बना मैं पूरी तरह से जैसे procrastinated था। मैं सब पर ध्यान केंद्रित नहीं किया तर्क या पहेली टुकड़े, मैं ग्राफिक्स और खोजने पर जोर सड़क पोस्ट और कचरा कर सकते हैं और यह सब। लेकिन उन अपेक्षित थे पहली बार में सामग्री। और एक बार मैं procrastinating समाप्त हो गया और व्यापक रूपरेखा बाहर बिछाने, मैंने फैसला किया है, मुझे सिर्फ एक बनाते हैं आसमान से कचरा गिरावट का टुकड़ा। और हम खरोंच देखेंगे बातों का समर्थन करता है बुलाया sprites-- अक्षर हैं जो कर सकते हैं इसलिए वे पर अलग अलग वेशभूषा है अलग दिखना। और इसलिए मैं एक कचरा डाल ऐसे ही एक प्रेत पर पोशाक। और मैं सिर्फ यह आवश्यक आसमान से गिर करने के लिए। और तो यह पता चला है, स्क्रैच, सबसे प्रोग्रामिंग भाषाओं की तरह, का समर्थन करता है या यादृच्छिक संख्या तकनीकी रूप से pseudocode यादृच्छिक संख्या, इतना है कि खींचकर और कुछ पहेली टुकड़े गिर रहा है, मैं कचरा करने में सक्षम था पहली बार में बाएं से आते हैं। और फिर अगली बार यह गिर गया, से सही और फिर बीच में से। और यह सब खेल सिर्फ था कचरा आसमान से गिरने की है। आप इसे बिंदु पर या उस पर क्लिक नहीं कर सका। आप कचरा कर सकते हैं नहीं खोल सके। आप कुछ नहीं कर सका। लेकिन यह एक बच्चे के कदम था मेरे परम दृष्टि की ओर। और उसके बाद, मैं वास्तव में किसी तरह कार्यान्वित संवेदन की तो यह है कि यदि आप क्लिक किया और कचरे के टुकड़े पर खींचें कचरा कर सकते हैं, ऑस्कर खत्म हो चुका है ढक्कन खोलने और बंद कर देंगे। कुछ भी नहीं कचरा के लिए होगा, लेकिन कम से कम ढक्कन खोलने और बंद कर देंगे। तो फिर, जांच दो में से दो कदम। और यह क्या होने जा रहा है है दोनों समस्या में महत्वपूर्ण शून्य सेट और प्रोग्रामिंग अधिक आम तौर पर में है ये बहुत जानबूझकर बच्चे कदम उठाए। क्योंकि न केवल यह आप के लिए अनुमति नहीं है महसूस ईमानदारी से और अधिक निपुण quickly-- यह है दुनिया में सबसे खराब बात ऑस्कर समय के सभी लागू करने की कोशिश करने के लिए, उसके बाद घंटे बाद हरी झंडी मारा, और कुछ भी नहीं के रूप में काम करता है उम्मीद क्योंकि जहां आप भी कर डिबग करने के लिए या करने के लिए शुरू कि इस कार्यक्रम के निवारण में? यह सिर्फ भारी है। और तो वास्तव में इस विचार को गले लगाते फिर steps-- बच्चे कदम उठा और again-- के निर्माण कुछ है कि, अंत में, वास्तव में प्रभावशाली और जटिल है, लेकिन पहली बार में, के रूप में ज्यादा तो लगभग नहीं है। वास्तव में, चलो यह करते हैं। मुझे आगे जाना है और-- खुद स्क्रैच करते हैं Scratch.MIT.edu पर वेब पर मौजूद है, और आप के रूप में बताया जाएगा समस्या में फिर से ज्यादा शून्य, के लिए विशिष्टता सेट जो CS50 की वेबसाइट पर पहले से ही है। लेकिन यह क्या स्क्रैच ही है। और वहाँ वास्तव में सिर्फ है तीन प्राथमिक क्षेत्रों में। शीर्ष वहाँ छोड़ दिया पर तथाकथित चरण में है। इस खरोंच है। डिफ़ॉल्ट पोशाक एक बिल्ली है। और यह आयताकार दुनिया में है आप ऊपर move-- सकता है, नीचे, बाएं सही और कुछ अन्य सामान। बीच में हमारे यहाँ श्रेणियां हैं या पहेली टुकड़े की हमारी pallets, और अलग अलग रंग अलग अलग चीजों का मतलब है। और अगर आप के आसपास प्रहार, तो आप देखेंगे छोरों और शर्तों की तरह बातें और चर और अन्य सामग्री। और फिर यहाँ पर लिपियों क्षेत्र है। यह वह जगह है जहां मैं खींचें और ड्रॉप कर सकते हैं उन पहेली टुकड़े बातें करने के लिए। तो चलो एक ऐसी बात करते हैं। मुझे आगे चलते हैं और-- और मुझे पता है कि वह कहाँ है। तो मैं तुरंत पर क्लिक करने के लिए जा रहा हूँ मैं कहाँ पता है कि चीजें, बनने के लिए तैयार हैं लेकिन इशारा करते हुए और क्लिक करके और आसपास poking अपरिहार्य हैं। तो जब हरे रंग का झंडा क्लिक किया, मेरी क्या करने की इच्छा है? मैं यह करने के लिए जा रहा हूँ। मैं इस बैंगनी पहेली खींचें करने के लिए जा रहा हूँ टुकड़ा, दो सेकंड के लिए हैलो कहते हैं, और मुझ में ज़ूम करते हैं। और मैं इस बदलाव करने जा रहा हूँ क्या मैं इसे be-- चाहते हो हैलो दो सेकंड के लिए दुनिया ठीक है। अब, मैं क्लिक करने के लिए जा रहा हूँ हरे रंग का झंडा, या अगर मैं वास्तव में चाहते हैं, मुझे पूरा इसे स्क्रीन कर सकते हैं और फिर वापस आते हैं। यह सिर्फ रखेंगे एक खिड़की में सब कुछ। ग्रीन flag-- हैलो दुनिया। ठीक है। भी दिलचस्प नहीं है। तो मुझे आगे जाना है और यह करते हैं। मुझे एक और एक कोशिश करते हैं। जब हरे रंग का झंडा चलो clicked-- एक आवाज की तरह कुछ करो। और सूचना है कि से बाहर मुफ्त यदि आप मिल के लिए बॉक्स एक बिल्ली ध्वनि, के रूप में डिफ़ॉल्ट प्रेत है। तो अब मुझे आगे जाना है और अब हरे रंग का झंडा मारा। [Meowing] ओ। यह आराध्य है। मैं प्रोग्रामिंग कर रहा हूँ। तो मैंने क्या किया है? यह एक कार्यक्रम के बराबर है। यह स्पष्ट रूप से सुपर आसान है। यह सच है कि ज्यादा सब नहीं ले गए थे प्रयास और एमआईटी, काम के सबसे किया लेकिन मैं एक समारोह में कहा जाता है। मैं एक समारोह का इस्तेमाल किया है। मैं कुछ कार्रवाई कर लिया है, बस का उपयोग कि एक बैंगनी पहेली टुकड़ा। खैर, मुझे क्या करना चाहते हैं, तो एक पंक्ति में तीन meows? मुझे आगे जाना है और दो और तीन करते हैं। और सूचना है कि जब आप पास के एक पहेली टुकड़ा मंडराना, एक छोटे सफेद लाइन प्रतीत होता है की तरह चुंबकीय, और यह तस्वीर होगी एक साथ जब आप चलते हैं। चलो देखते हैं कि क्या होता है यहाँ। [Meowing] वहाँ एक बग है। मैं केवल एक म्याऊ सुनते हैं। ऐसा क्यों है कि हो सकता है? हाँ? हाँ। हम वास्तव में यह नहीं सुना है, लेकिन लगता है कि अच्छा अंतर्ज्ञान है। वे सभी एक ही समय में खेल रहे हैं। क्यूं कर? खैर, कंप्यूटर सिर्फ जा रहा है क्या आप ऐसा करने में बताने के लिए करते हैं। तो अगर आप कहते हैं, खेलने ध्वनि, , ध्वनि खेलने के लिए ध्वनि खेलते हैं, लेकिन आप जब तक खेलने के लिए यह नहीं बताया है आप कर रहे हैं, जब तक आप कर रहे हैं खेलते हैं, इसके माध्यम से उड़ा जा रहा है कार्यक्रम वास्तव में तेजी और केवल आप क्या करना है यह बताने है। इसलिए मैं वास्तव में ठीक करने की जरूरत तरीके के एक जोड़े में यह। मैं सिर्फ यह करना है, इस से छुटकारा मिल सकता है। मुझे इस पहेली अन्य की कोशिश करते हैं piece-- ध्वनि म्याऊ खेलने तक किया, और उसके बाद के तीन खींचें इन पर क्लिक करें और खेलो। [Meowing] यह वास्तव में very-- नहीं है you-- बहुत ही स्वाभाविक धन्यवाद। तो क्यों करते हैं I-- नहीं है मुझे यहाँ नियंत्रित करने के लिए जाना। अच्छा लगा। एक मिनट रुको, और अब मुझे वापस जाने दिया लगता है, और खेलने ध्वनि करने के लिए जब तक किया, और फिर मुझे एक पल के इंतजार मिलता है। और फिर मुझे जाने के लिए और एक मिलता है अधिक ध्वनि, और यहाँ हम चले। [Meowing] एक छोटे से अधिक स्वाभाविक है, लेकिन यह बहुत ही कुशल है। जैसे मैंने ऊब रहा था, सब हो इसे संक्षेप में, आगे और पीछे क्लिक और वास्तव में मेरे work-- duplicating बहुत ज्यादा कॉपी करने और चिपकाने। वास्तव में, यदि मैं नियंत्रण क्लिक किया है या सही क्लिक किया, मैं तो बस कॉपी और चिपकाया जा सकता था। एक बेहतर इस्तेमाल करने के लिए निर्माण क्या होगा? पहले से क्या विचार है? हाँ, तो एक पाश। और वास्तव में, अगर हम आसपास poked, हम ठीक है कि मिल सकता है। मुझे घटनाओं के लिए या बल्कि कंट्रोल से चलते हैं। तो repeat-- मैं नहीं यह 10 गुना होना चाहते हैं। यही कारण है कि जल्दी गुस्सा आ पाने के लिए जा रहा है। लेकिन मैं तीन बार दोहराना होगा। मुझे ध्वनि के लिए वापस जाओ और ध्वनि खेलने के लिए जब तक यह हो चुका है। मुझे नियंत्रण के लिए वापस जाओ और सिर्फ एक सेकंड रुको। और नोटिस, तुम हो सकता है लगता है वह ठीक नहीं है, लेकिन फिर अगर आप इसे जाने चुंबकीय तस्वीर के स्थान पर, इसे भरने के लिए विकसित होगा। अब यह क्या खेल है? [Meowing] ठीक। अच्छा लगा। और यह क्या है बुलाया जाएगा एक कार्यक्रम में भी सही है कि। यह तीन बार काफी meowed स्वाभाविक रूप से, लेकिन यह बेहतर बनाया गया है। मैं कम अतिरेक का उपयोग कर रहा हूँ। मैं कॉपी और पेस्ट कुछ भी नहीं किया। मैं सिर्फ एक बेहतर विचार किया करते थे। अब, यह अभी भी सब नहीं है कि खरोंच नहीं कर रही के साथ दिलचस्प कुछ भी। तो चलो कुछ और बजाय करते हैं। चलो कुछ हमेशा के लिए करते हैं। और क्या आपको पता है? मोशन दिलचस्प लगता है। उसे 10 कदम है चलो कदम और अब खेलने मारा। ठीक। खैर, हम कर सकते हैं खींचें की तरह उसे वापस, और वह अभी भी है चल रहा है, क्योंकि वह यह हमेशा के लिए कर रही है। तो पाश कर रही है क्या यह करने के लिए कह रहा है, लेकिन यह सब है कि दिलचस्प नहीं है। आओ इसे करें। मुझे एक नियंत्रण ब्लॉक जोड़ दें, और एक का उपयोग पहली बार के लिए उन परिस्थितियों की। तो यह 10 steps-- स्थानांतरित करने के लिए जा रहा है 10 डॉट्स, screen-- पर 10 पिक्सल तो यह इस सवाल पूछने के लिए जा रहा है। अगर कुछ सच है, तो ऐसा इस ब्लॉक के अंदर कुछ और। तो यह पता चला संवेदन एक पूरी है बूलियन expressions-- का गुच्छा हाँ का सवाल नहीं है या सच झूठी मुझे इस करते हैं form--। touching-- हैं और फिर वहाँ है मेनू नीचे इस छोटी सी बूंद। मैं यह parameterize कर सकते हैं। अगर छू जाने edge-- की ऐसा कुछ नहीं है। तो अगर edge-- छू मेरे प्रस्ताव को वापस जाने दिया। और क्यों नहीं हम बस 180 डिग्री के आसपास बारी? ठीक है। तो हमेशा के लिए, 10 कदम चले जाते हैं। आप को छू रहे हैं बढ़त, 180 डिग्री बारी है। और कहा कि कार्यक्रम का अंत नहीं है क्योंकि तुम एक में हो हमेशा के लिए ब्लॉक, इसलिए इसे फिर से जाना जा रहा है और बार बार। तो चलो देखते हैं क्या होता है। ठीक। एक छोटी छोटी गाड़ी है, लेकिन एक तरह से शांत। और हम यह करने के लिए कुछ मूर्खतापूर्ण बातें जोड़ सकते हैं कि सभी कर रहे हैं न कि बौद्धिक दिलचस्प है। लेकिन अगर हम इस छोटे से मारा माइक्रोफोन button-- आहा। मुझे इस को साफ करते हैं। मुझे के रूप में यह बढ़ाने के चलो वे टीवी पर कहेंगे। साफ है कि अप, सहेजें, और अब लिपियों के लिए ऊपर जाना है। और अब, मुझे बात करने के लिए चलते हैं। मुझे यह एक नाम दे देते हैं। मैं इस आहा फोन करता हूँ। और अब ध्वनि आहा खेलते हैं। सूचना है कि यह में प्रकट होता है मेनू नीचे छोटे से ड्रॉप। चलो देखते हैं। [आउच] [हस रहा] लेकिन हम मक्खी पर टी अपने को बदल सकते हैं। हम दो बार के रूप में कष्टप्रद हो सकता है। [आउच] या हम इसे की तरह बनाने के लिए अगर एक time-- पर 1,000 कदम ठीक। इसलिए हम अकेले छोड़ने के लिए है कि एक जा रहे हैं। तो फिर, मैं निर्माण blocks-- सुपर सरल कुछ के साथ शुरू कर दिया, और फिर मैं एक फीचर जोड़ा, एक फीचर जोड़ा है, एक फीचर जोड़े। और मैं अब और नहीं के बारे में चिंता करने की जरूरत कैसे उन सुविधाओं का पहला के रूप में मैं जारी लागू किया गया था शीर्ष पर बातें परत करने के लिए। तो वास्तव में, मुझे यहाँ एक दूसरे से करते हैं। मुझे आगे जाना है और एक फाइल खोलते हैं कि मैं अग्रिम में लाया, भेड़ का आह्वान किया। तो यह एक से थोड़ा अलग है चरित्र है कि इस तरह दिखता है। और मुझे देखते हैं, तो मैं नहीं कर सकता एक काउंटर का उपयोग कर कुछ करना इस में एक तथाकथित चर case--। मैं आगे और Events-- के नीचे जाने के लिए जा रहा हूँ मुझे एक हरे रंग का झंडा क्लिक किया मिलता है। तो फिर मुझे डेटा है, जो मुझे पता करने के लिए जाने दिया बस से पहले खेलने के आसपास से, वह जगह है जहाँ चर रहे हैं। और मैं आगे जाना है और इस खींचें करने के लिए जा रहा हूँ। तो एक चर काउंटर कहा जाता है, और मैं शून्य करने के लिए इसे प्रारंभ करने के लिए जा रहा हूँ। मैं इसे anything-- एक्स कॉल कर सकते हैं या वाई या z-- लेकिन प्रोग्रामिंग में, एक शब्दार्थ में कुछ बुला उपयोगी तरीका, काउंटर की तरह, वर्णन करता है कि यह क्या है, यह एक है बहुत आसान अपने कोड बाद में पढ़ने के लिए। मुझे आगे जाना है और मिलता है एक हमेशा के लिए यहां ब्लॉक। और मुझे लगता है के लिए जाने दिया पेज और एक कहना ब्लॉक करना। लेकिन क्या चर के बारे में अच्छा है मैं है सिर्फ कुछ में टाइप करने की जरूरत नहीं है जैसे नमस्ते दुनिया है, जो हम पहले से ही है किया, मैं बजाय डेटा के लिए जा सकते हैं और मेरे चर खींचते हैं, और यहां तक ​​कि हालांकि आकार नहीं करता है काफी की तरह इसे फिट होना चाहिए लग रही है, इसे भरने के लिए विकसित होगा। और मैं सिर्फ एक के लिए काउंटर कहूँगा second-- spoiler-- वह गिनती करने के लिए जा रहा है। हम एक दूसरे के लिए यह कहूँगा। तब मैं जाने के लिए जा रहा हूँ और उसे एक पल के लिए इंतजार है, तो यह भी तेजी से गिनती नहीं है। और फिर अंत में, काउंटर बदल दूसरे शब्दों में one-- से, एक ने काउंटर वेतन वृद्धि अतिरिक्त मूल्य और यह हमेशा के लिए नहीं है। तो भेड़ भी है, जैसे एक प्रोग्रामर, 0 से गिना जाता है। और अगर हम काफी लंबे समय से इंतजार है, वह यह हमेशा के लिए क्या करेंगे। लेकिन वह वास्तव में सच नहीं है, क्योंकि वास्तव में, के रूप में हम एक सप्ताह में पता चल जाएगा, पूर्णांकों और कंप्यूटर और अधिक आम तौर पर, तकनीकी रूप से केवल एक finite-- अच्छी तरह से है, बजाय कंप्यूटर, जब वे पूर्णांकों का प्रतिनिधित्व करते हैं, केवल बिट्स की एक निश्चित संख्या है। वहाँ जो प्रकाश बल्ब केवल इतनी अधिक भरोसा कर सकते हैं इससे पहले कि आप प्रकाश बल्ब से बाहर रहे हैं। और एक कंप्यूटर भी है, केवल इतना मेमोरी है, केवल इतने सारे ट्रांजिस्टर है, तो यह केवल इतनी अधिक भरोसा कर सकते हैं। तो यह है कि भेड़ पता चला है, मुझे लगता है, 2 अरब करने के लिए भरोसा कर सकते हैं या कुछ और बहुत बड़ा। इसलिए हम नहीं जा रहे हैं ऐसा होने के लिए प्रतीक्षा करें। लेकिन अंत में कुछ बग क्या होगा कि कुछ बहुत ही वास्तविक दुनिया में हो सकता है नतीजों। परन्तु भेड़ों से परे है, कि सिर्फ एक चर का परिचय। आगे बढ़ते हैं और ऊपर खुला चलो कुछ मैं अग्रिम में किया यहां पालतू Cat-- बुलाया यहाँ पर बिल्ली पालतू। और यहाँ नोटिस यह कुछ है ब्लॉक, लेकिन जब हरे रंग का झंडा क्लिक किया है, हमेशा के लिए निम्नलिखित कर रही है। आप माउस को छू रहे हैं pointer-- तो स्क्रीन पर कर्सर, arrow-- खेलने ध्वनि म्याऊ और फिर दो सेकंड प्रतीक्षा करें। और सिर्फ यह हमेशा के लिए नहीं है। बस लगातार इंतजार pointer-- देखने के लिए अगर बिल्ली सूचक को छू जाता है। तो मैं खेलने मारा। कुछ भी नहीं हो रहा है। लेकिन जैसा कि मैंने बिल्ली पर कर्सर ले जाते हैं, [Meowing] और अगर मैं इसे दूर ले जाते हैं, नहीं बिल्ली अब और petting। तो कुछ सशर्त तर्क एक पाश के अंदर नेस्ट। कैसे इस उदाहरण के बारे में, जानबूझ कहा जाता है बिल्ली पालतू नहीं है? क्या यह करने के लिए हो रहा है? [Meowing] आप क्यों पालतू बिल्ली नहीं करना चाहिए? [Meowing] ठीक। तो यह एक और अगर का एक उदाहरण है। यह एक निर्णय बिंदु है और क्योंकि यह पाश में बैठा है, वे दोनों की जाँच हो रही है। क्या ये सच है? क्या ये सच है? क्या ये सच है? क्या ये सच है? और अंत में, में से एक उन लागू करने के लिए जा रहा है और तो आप या तो म्याऊ या सुनना उस मामले में शेर की दहाड़। ठीक है, चलो एक से थोड़ा अधिक फैंसी एक करते हैं मैं अग्रिम धागे too-- में की गई है। तो एक धागे में से एक है बात यह है कि एक कंप्यूटर कर सकते हैं। तो एक बहु लड़ी पिरोया कार्यक्रम एक कार्यक्रम है कि एक बार में कई बातें कर सकते हैं। और इन उदाहरणों के सभी इस प्रकार अब तक पड़ा है सिर्फ एक स्क्रिप्ट है, तो speak-- करने के लिए एक कार्यक्रम के लिए यहाँ इस तरह अप। परन्तु ध्यान इस कार्यक्रम है दो स्प्राइट, दो अक्षर। एक एक पक्षी है। एक एक बिल्ली है। और नोटिस जब मैं इन पर क्लिक करें नीचे छोड़ दिया, वे प्रत्येक अपने स्वयं लिपियों या प्रोग्राम उनके साथ जुड़े। और उन दोनों कार्यक्रम, सूचना, शुरू जब हरे रंग का झंडा clicked-- साथ के cat-- को देखो जब हरे रंग का झंडा क्लिक किया। और तो वास्तव में, जब मैं अब खेलने मारा, दो बातें एक बार में होने जा रहे हैं। बिल्ली और पक्षी दोनों हैं एक साथ काम करने के लिए जा रहा इस आशय बनाने के लिए। और आप कल्पना कर सकते हैं कि क्या हो रहा है। वहाँ एक पाश और पक्षी है और बिल्ली एक पाश में हैं। पक्षी की तरह सिर्फ उछल रहा है मैंने पहले जब मैं आहा कहा था। लेकिन बिल्ली स्पष्ट रूप से एक फायदा है। वहाँ एक और संवेदन ब्लॉक है कि जानबूझ बिल्ली बताते हैं इस मामले में यहां पक्षी है। इसलिए हम अलावा तंग कर सकता है, देख कर उन ब्लॉकों के माध्यम से, क्या हो रहा है। लेकिन यहाँ महत्वपूर्ण घटक है। पक्षी है, ताकि इस खेल नहीं है पूरी तरह से boring-- या इस animation-- एक यादृच्छिक दिशा में शुरू होता है। और कंप्यूटर उठा रहा है 90 और 180 के बीच एक नंबर अनिवार्य रूप से, इतना है कि यह एक थोड़ा है विभिन्न एनीमेशन हर बार। और फिर यहाँ नोटिस, अगर बिल्ली पक्षी को छू रहा है, तो दहाड़ sound-- शेर चार खेलते हैं। लेकिन इस बीच में पक्षी पैलेट, हम इस किया है। हमेशा के लिए, बिल्ली को छू नहीं हैं, सिर्फ तीन कदम आगे बढ़ते रहना। और फिर यहाँ एक और पहेली टुकड़ा है। आप बढ़त पर हैं, तो उछाल। तो पक्षी बस की तरह है अपने खुद के काम से काम कर, बस के चारों ओर उड़ान और उछल, और यह सच है बिल्ली है कि सशर्त तर्क था निर्धारित करने के लिए अगर यह चिड़िया पकड़ा था। ठीक है। तो चलो यहाँ एक दूसरे से करते हैं, इस एक हाय हाय हाय बुलाया जा रहा है। और यह एक यहाँ सिर्फ करता है एक हमेशा के पाश में यह। लेकिन notice-- कि हम कैसे रोक सकता हूं यह बहुत कष्टप्रद कार्यक्रम? अंतरिक्ष बार मारा। क्योंकि अगर मैं ऐसा, बाएं हाथ program-- नोटिस में यह लगातार है listening-- कुंजी अंतरिक्ष प्रेस है। अगर अंतरिक्ष बार दबाया, और यदि हां, यह क्या करता है? यह एक बहुत ही आम तकनीक करता है। यह एक चर कुछ मूल्य के बराबर सेट। लेकिन यह है कि मूल्य टॉगल करता है। [? तो उपस्थिति?] shape-- मैं पर आधारित एक चर राशि है कि मैं अग्रिम में लिखा बुलाया मौन, जो सिर्फ हाँ या नहीं कहना है। ध्वनि मौन है या नहीं? सही या गलत? और नोटिस, मैं अगर this-- कह रहा हूँ मौन शून्य है, तो एक को बदलने के लिए, बाकी शून्य करने के लिए यह मूक निर्धारित किया है। तो बस शून्य से एक के लिए मूल्य फ्लिप। मैं इसे बदल done-- हो सकता था तीन के लिए दो और तीन दो से या चार से पांच या छह के लिए चार। लेकिन यह बात नहीं है क्या संख्या मैं उपयोग करते हैं, इतने लंबे समय के रूप में मैं रखना यह विपरीत बदल रहा है। और सबसे किसी भी प्रोग्रामर सिर्फ होगा शून्य और one-- झूठे और सच्चे चुनते हैं, बंद और on-- इस प्रतिनिधित्व करने के लिए। और यह अभी भी चल रहा है। अगर मैं अंतरिक्ष बार फिर से मारा [सील ध्वनियों] कार्यक्रम अभी भी चल रहा है। क्योंकि वहाँ इस दूसरे स्क्रिप्ट है जो कहते हैं, हमेशा के लिए निम्नलिखित है। तो मौन चर के बराबर होती है zero-- ताकि आप मौन नहीं कर रहे हैं logic-- है अगर यह गलत है या नहीं, तो ध्वनि खेलते हैं, क्योंकि तुम मौन नहीं कर रहे हैं। आप ध्वनि खेलना चाहिए और उसके बाद लगता है कि हाय हाय हाय दो सेकंड के लिए और तब तक प्रतीक्षा करें, और यह करने के बार बार। और इसलिए इस तरह से हम के लिए एक रास्ता है कार्यक्रमों बातचीत करने के लिए लोगों को है--। और वे की जरूरत नहीं है दूसरों के रूप में के रूप में दिनांकित किया। वास्तव में, around-- poking मजाक नहीं-- किसी की एक बड़ी राशि खर्च इंटरनेट को लागू करने पर समय खरोंच में PokemonGo। यह भी आप में geolocates कैम्ब्रिज या Allston यहाँ। तो अगर आप भी लोगों को क्या देखना चाहते हैं क्या कर सकते हैं this-- बहुत फैंसी मेनू है। यहाँ पर क्लिक करें। अब यह मेरी तीर कुंजी के साथ मुझे है। मैं इस के बाद जाने के लिए जा रहा हूँ। क्लिक करें। और अब आप Pokeball क्लिक करें। मेरा मतलब है, मुझे लगता है कि आप कर रहे हैं Pokeball क्लिक करने के लिए चाहिए। ठीक है। तो मैंने वैसा ही किया। मैं यहाँ पर जा सकते हैं। और इस व्यक्ति को कुछ और कार्यान्वित here-- तीन PokeBalls खत्म PokeBalls। हम यह करने के लिए एक लिंक पोस्ट करेंगे इसलिए ऑनलाइन आप खेल सकते हैं। लेकिन सूचना वहाँ सिर्फ है कुछ बुनियादी इमारत ब्लॉकों। यह एक बहुत शौक़ीन लग रहा है, और यह है। यह प्रभावशाली और अधिक है हम आम तौर पर की तुलना उम्मीद है, इस समस्या के लिए निश्चित रूप से शून्य की स्थापना की। मुझे नहीं पता कि कब तक इस व्यक्ति के साथ बिताया ऑनलाइन। लेकिन यह सब सिर्फ एक पाश है। वहाँ एक ध्वनि खेल रहा है। वहाँ पाश किसी तरह का है के लिए कि क्या मैं कर रहा हूँ सुन ऊपर तीर या नीचे से टकराने तीर या छोड़ दिया और सही, और फिर यदि हां, तो यह बढ़ रहा है यह बॉलीवुड की कुछ संख्या। और फिर अगर मैं पर क्लिक करें एक और स्प्राइट, वहाँ अगर हालत वहाँ किसी तरह का। हाँ, यह भी तीव्र हो रही है। हम बंद करने के लिए जा रहे हैं। यह उन सभी बुनियादी इमारत ब्लॉकों है। वहाँ कोई अन्य अन्य तत्व हैं लोगों की तुलना में हम पहले से ही देखा है। और फिर भी यहाँ, मुझे करने दो उदाहरणों में से एक अंतिम सेट वह भी एक तस्वीर पेंट आप यहाँ क्या कर सकते हैं। यहाँ एक बहुत ही साधारण प्रोग्राम है कि सिर्फ this-- खांसी, खांसी, खांसी करता है। और केवल के आधार पर क्या हम इस प्रकार अब तक देखा है, जहां स्पष्ट है सुधार के लिए अवसर। इस कार्यक्रम सही है। यह तीन बार खांसी, जो मैं क्या इरादा है। लेकिन यह खराब लागू किया है। यह बुरी तरह से तैयार है। क्यूं कर? हाँ। यह एक पाश नहीं है। और यह इतना नहीं है कि यह एक पाश नहीं है, यह वहाँ अतिरेक का एक बहुत है कि है। वहाँ नकल की है और चिपकाया कोड, तो बात करो। और समाधान शायद वास्तव में एक पाश है। तो मुझे आगे चलते हैं और उस पर सुधार। और मैं यहाँ पर इन खींचें करने के लिए जा रहा हूँ। मुझे आगे जाना है और एक दोहराने मिलता है ब्लॉक, तीन को यह बदल जाते हैं। मैं दूर फेंक करने के लिए जा रहा हूँ उन ब्लॉकों में से कुछ। और आप यह बहुत सहज है पर ध्यान देंगे। तुम खींचें और ड्रॉप और बातें दिखाई देते हैं और अंत में गायब हो जाते हैं। और मैं बस यहाँ में खींच सकते हैं, और अब मैं एक क्लीनर संस्करण अभी भी है। लेकिन तुम जानते हो क्या? इस अवसर है abstraction-- के लिए अब नई शब्दावली को परिभाषित करने के लिए शुरू करने के लिए एमआईटी कि सोचा भी नहीं था। वहीं रुको और दोहराने है और हमेशा के लिए और अगर, लेकिन क्या अगर मैं चाहता हूँ लागू करने के लिए एक ब्लॉक के रूप में शब्द खांसी? क्या होगा यदि मैं एक पहेली टुकड़ा चाहते हैं जीवन में जिसका उद्देश्य खाँसी के लिए है? ठीक है, चलो इस संस्करण को देखो यहाँ है, जो मैं के रूप में बनाया है। जादुई, मैंने बनाया है इस पहेली को यहां टुकड़ा, जो खरोंच तुम क्या करने की अनुमति देता है। और वास्तव में सी और अजगर और जावास्क्रिप्ट हैं आप इस रूप में अच्छी तरह से करने के लिए अनुमति देने के लिए जा रहा है। आप अपने स्वयं के कस्टम बना सकते हैं टुकड़े कि फोन आप क्या चाहते हैं। इस मामले में, खांसी लगता है एक उचित परिभाषा की तरह। और फिर इन टुकड़ों नीचे के साथ यहाँ आप परिभाषित कर सकते हैं कि यह क्या मतलब है। मैं घसीटा और से गिरा इस पैलेट here-- अधिक इस बड़े बैंगनी blocks-- ब्लॉक, जहां मैं खांसी में टाइप मेरी नई पहेली टुकड़ा के नाम के रूप में। और फिर मैं किसी भी समय कह रहा हूँ एक उपयोगकर्ता इस नए खांसी पहेली टुकड़ा कहता है, एक कहना और एक प्रतीक्षा कर रहे हैं। और तो यहाँ मेरी दोहराने ब्लॉक में, मैं सिर्फ तीन बार खांसी कर सकते हैं। और मैं तर्क होता है, विशेष रूप से अब अगर आप इस विस्तार को छिपाने। कौन परवाह करता है कि कैसे खांसी कार्यान्वित किया जाता है? सभी मैं एक के रूप में के बारे में परवाह प्रोग्रामर है कि मैं खाँसी कर सकते हैं। मुझे परवाह नहीं है कैसे कह कार्यान्वित किया जाता है। मैं सिर्फ इतना है कि परवाह बिल्ली कुछ कह सकते हैं। मैं कर सकता हूँ सार दूर है कि विस्तार और केवल यहाँ क्या स्क्रीन पर है पर ध्यान केंद्रित। लेकिन मैं इस एक कदम और आगे ले जा सकते हैं। लगता है कि यहाँ पर ध्यान दें, मेरे पास है पाश तीन बार लागू किया है। लेकिन क्या अगर बजाय मैं इस संस्करण हड़पने? और क्या अगर बजाय यहाँ इस संस्करण में, मैं सिर्फ अपने पहेली टुकड़ा बदल लेने के लिए एक तर्क और इनपुट ही पर्यत? और कहा कि इनपुट हो सकता है तीन तरह एक नंबर। तो अब, अगर मैं एक कार्यक्रम में लिख रहा हूँ और मैं बिल्ली खाँसी करना चाहते हैं, मैं वास्तव में पहेली बता सकते हैं टुकड़ा कितनी बार खाँसी, क्योंकि यहाँ तल पर, एक शौक़ीन इन कस्टम पहेली टुकड़े के संस्करण मुझे लगता है कि यह निर्दिष्ट करने देता है खांसी वास्तव में लेता है एक input-- इस तरह एक तर्क लेता है। और क्या आपको पता है? हो सकता है कि मुझे पता है, एक मिनट रुको। खाँसी same-- है यह मौलिक है छींकने के रूप में एक ही विचार है। यह सिर्फ एक अलग है स्क्रीन पर शब्द। मैं सार दूर कर सकते हैं आगे और लागू एक के इस अंतिम संस्करण खाँसी, जो पहली नज़र में जिस तरह से और अधिक जटिल लग रही है। लेकिन नोटिस मैंने क्या किया है। मैं अब genericized generalized-- इस पहेली टुकड़ा really-- शब्द एन बार कहने के लिए बुलाया जाएगा। और अब मैं दो नई पहेली टुकड़े यहाँ नीचे खांसी एन बार परिभाषित करते हैं। और खांसी समारोह क्या करता है? अपने कस्टम पहेली टुकड़ा क्या करता है? यह सिर्फ कहने ब्लॉक कॉल, शब्द मैं कहना चाहता हूँ में गुजर रहा है, संख्या में गुजर रहा है समय की मैं कहना चाहता हूँ। क्योंकि अब मैं लागू कर सकते हैं बस Achoo कह कर छींक, इस मामले में, समय में से कुछ संख्या है। और इसलिए मैं कर रहा हूँ और लेयरिंग लेयरिंग। और फिर, यहां महत्वपूर्ण यह नहीं है मैं इसे कैसे लागू किया, लेकिन तथ्य यह है कि अगर मैं सिर्फ शाब्दिक स्क्रीन बंद इन ले जाते हैं, देखो कितना आसान नहीं है, तो सुंदर मेरी कार्यक्रम अब लग रहा है। यह क्या करता है क्योंकि कहते हैं, मैं अनमना गए दूर क्या है कि ब्लैक बॉक्स के अंदर है। इसे यहाँ एक बैंगनी बॉक्स होना होता है, लेकिन मैं दूर बाधित कर दिया है अंदर क्या है क्योंकि मुझे परवाह नहीं है कि यह कैसे काम करता है। मैं तो बस अब है कि यह काम करता है परवाह है। और वास्तव में, समस्या में सेट शून्य, यह ठीक है विचारों की लेयरिंग की तरह आप करेंगे का पता लगाने का अवसर है। यह वास्तव में करने का अवसर है समस्या हल करने की तकनीक लागू होते हैं, क्या शायद एक है करने के लिए अपरिचित माहौल। और क्या आप प्रोग्राम नहीं किया है पहले या पहले प्रोग्राम, आप यह है कि वहाँ मिल जाएगा थोड़ी मात्रा में कोई वस्तु हर किसी के लिए इस माहौल में। और समस्या के साथ सेट एक सप्ताह के समय में से एक है, हम ध्यान केंद्रित करने के लिए संक्रमित कर सकता हूँ एक उच्च स्तर की भाषा कहा जाता है पर C-- या बल्कि एक कम स्तर की भाषा कहा जाता है C-- कि और भी है शक्तिशाली, यह भले ही एक छोटे पहली नज़र में अधिक गुप्त। और आप आज के टीएल प्रति एहसास होगा: डॉ, इस समस्या सेट एक छोटी है कि भविष्य लोगों की तुलना में समय की खिड़की, बस क्योंकि आप के लिए यह काफी खोजने चाहिए सुलभ। और अगर चिंता नहीं तुम क्लास देर से जोड़ें। हम लंबे समय से पहले कि संबोधित करेंगे। और इससे पहले कि हम केक के लिए स्थगित, चलो सिर्फ एक दो मिनट का रंग-रूप के साथ खत्म क्या आप CS50 में यहाँ इंतजार कर रहा है। [संगीत बजाना] ठीक है। यही कारण है कि यह CS50 के लिए है। हम आपसे जल्द ही मिलेंगे। केक अब सेवा की है। [संगीत बजाना] अध्यक्ष 17: क्या आपने सुना है एक विश्राम, मुख्यमंत्री की? अध्यक्ष 18: शायद वहाँ है हुड के तहत और अधिक।