[वीडियो प्लेबैक] [कार के दरवाजे बंद] [कार इंजन शुरू] [संगीत बजाना] सही खोज में साथ -Moving अच्छा समय और अच्छी खबर की। अच्छे दोस्त के साथ आप नहीं खो सकते हैं। -यह एक आदत बन सकता है। -Opportunity दस्तक देता है चलो अभी तक पहुंचने और इसे ले लो। हाँ! -Together हम इसे पकड़ने करेंगे। -We'll अड़चन बढ़ोतरी, बस, या पीले रंग की टैक्सी यह। -Dammit। सही साथ चलती -We're। मुक्त -Footloose और फैंसी। -जैसा काम होगा मजा वैसा ही आएगा। इसे मेरे साथ साझा आओ। सही साथ चलती -We're। लोड साझा करने के लिए जा रहा -We're। -हम एक नक्शे की जरूरत नहीं है सड़क पर इस शो के लिए मिलता है। फोज़्ज़ी हे, मैं तुम्हें छोड़ दिया चालू करना चाहते हैं आप सड़क में एक कांटा के लिए आते हैं। -जी श्रीमान। सड़क में दोराहे पर छोड़ दिया बारी। बाएं मुड़ें। -मैं कि विश्वास नहीं है। हमने पाया है साथ सही -Cruising राजमार्ग पर रोशनी। अपने रास्ते या मेरे रास्ते -और। -तो मेरे नेविगेशन पर भरोसा है। आकर्षक कारों के साथ -Movie सितारे और ऊपर नीचे के साथ जीवन। बड़ी पहाड़ियों तूफान -We're। हाँ, तूफान सही है। यह बर्फ गिर रही किया जाना चाहिए? -नहीं, मुझे ऐसा नहीं लगता। सही साथ -Moving। मुक्त -Footloose और फैंसी। बड़े समय के लिए तैयार -तुम। यह मेरे लिए तैयार -Is? सही साथ -Moving। सही साथ चल रहा है। सही साथ चल रहा है। सही साथ चल रहा है। -मैं आप बेहतर ऊपर खींचने लगता है। -जी श्रीमान। [अंत प्लेबैक] [वाहवाही] डेविड जे मालन: इस CS50 है। और इस सप्ताह के 0 के अंत है, लेकिन एक सुंदर दोस्ती की शुरुआत। हम होने के लिए उत्साहित कर रहे हैं यहां येल विश्वविद्यालय में साथ बहुत पहले समय के लिए हमारे दोस्त Scaz, और जेसन, और एंडी। CS50 के टीएफ के सभी 40 और सीए येल में यहाँ है। और आप सभी का। और वास्तव में, यह शायद समय आ गया है है-- [वाहवाही] तो, भले ही व्याख्यान के सबसे वास्तव में इस साल कैम्ब्रिज में होगा, वास्तविकता यह है कि डिजाइन की है, और बहुत ज्यादा जान-बूझकर CS50 में, मुझे लगता है हम बिंदु पास आ रहे हैं लगता है तकनीकी रूप से, और शैक्षणिक दृष्टि से, यह एक बेहतर शैक्षिक जा सकता है, जहां कुछ के साथ संलग्न करने के अनुभव पाठ्यक्रम की सामग्री ऑनलाइन की। मुझे विश्वास है और वास्तव में, यदि reality-- इस philosophically-- कि व्याख्यान है नहीं कर रहे हैं एक विशेष रूप से पहुंचाने के लिए प्रभावी साधन काफी जटिल जानकारी। निश्चित रूप से घंटे से अधिक समय की लंबी फैला प्लस। और वास्तव में हर कुछ minutes-- मैं college-- में अपने आप को याद आप एक पल के लिए क्षेत्र से बाहर आप कुछ जटिल विषय याद आती है, और तुम बहुत ज्यादा चला रहे हैं अगले 45 मिनट के लिए। और वास्तविकता यह है कि क्या यह है कि आप न्यू हेवेन या कैम्ब्रिज में यहाँ कर रहे हैं या परे होने की सादगी थामने के लिए क्षमता और तेजी से आगे, संबंधित करने के लिए, हाइपरलिंक उल्टा संसाधनों, खोज पूर्ण पाठ टेप और एक अवसर की तरह है कि मैं हमारे ऑनलाइन छात्रों के लिए कहने की हिम्मत अच्छी तरह से न्यू हेवन से परे है, उन्हें एक अवसर प्रदान करता है वास्तव में काबू करने के लिए वैचारिक सामग्री है कि हम सब बेहतर व्याख्यान में परिचय। लेकिन अंततः CS50 में है छात्रों के अनुभव है, तो विशेषता है इतना अधिक पाठ्यक्रम की समस्या सेट से, या साप्ताहिक प्रोग्रामिंग परियोजनाओं, पाठ्यक्रम के वर्गों शिक्षण के नेतृत्व में साथियों, रात को कार्यालय समय के नेतृत्व में बेशक सहायकों और शिक्षण साथियों, और वास्तव में इस तरह के CS50 पहेली के रूप में की घटनाओं दिन, CS50 के हैक एक thon, CS50 मेला, साप्ताहिक लंच, और इतना अधिक। और आप नए में यहाँ कर रहे हैं तो क्या हेवन, या दूर से ट्यूनिंग, कैम्ब्रिज में आज, और हम जल्द ही फिर आप देखेंगे वास्तविकता यह है है एक और एक ही वर्ग। और हम करने के लिए उत्साहित कर रहे हैं सब एक साथ आज यहां। और तो सेमेस्टर के अंत में, वैसे, यहाँ जाए या दूर उम्मीद है कि आप गर्व से पहनते हैं, खुशी से, और शायद राहत की एक बिट के साथ, साक्षी है कि शर्ट आप के लिए CS50 ले लिया। तो हम कहाँ बुधवार को बंद कर छोड़ दिया? हम पर एक नज़र लिया कम्प्यूटेशनल सोच। और कहा कि हम आसुत क्या की ओर है कंप्यूटर विज्ञान, पर्यत कम से कम अभी के लिए। लेकिन हम में थोड़ा आगे यह आसुत कम से कम तीन घटक तत्वों। आदानों, तो क्या है समस्या है, हम हल करने की कोशिश कर रहे हैं? आउटपुट, क्या है हम पाने के लिए उम्मीद कर रहे हैं जवाब? और वहाँ से प्रतिनिधित्व। और हम यहाँ पर ध्यान केन्द्रित करना नहीं होगा बाद द्विआधारी, या यहां तक ​​कि ASCII पर, और इतना पसंद है, लेकिन बल्कि लेने के लिए दी हम इस जानकारी का प्रतिनिधित्व कर सकते हैं कि, कहीं अधिक दिलचस्प हिस्सों क्योंकि उन समस्याओं का बस नहीं कर रहे हैं इनपुट और आउटपुट, लेकिन एल्गोरिदम उन है कि समस्याओं को सुलझाने में चलते हैं। और तुम से याद हो सकता है दूसरे दिन है कि हम एक काफी पारंपरिक ले लिया किसी को देख की अवधारणा एक काफी बड़ी फोन बुक में, या अधिक आम तौर पर डिजिटल रूप से इन दिनों, सिर्फ एक बहुत बड़े डेटा सेट। एक सच में बड़ा संपर्क सूची, साथ नामों की बहुत सारी वर्णानुक्रम में सॉर्ट। और हमने महसूस किया कि मैं जबकि बस इस समस्या को संपर्क कर सकते हैं एक रेखीय का उपयोग करके पेज द्वारा approach-- पेज, हमने महसूस किया एक time-- पर या यहां तक ​​कि दो की अधिक सहज algorithm-- कि बस की तरह विभाजित और जीतने समस्या फिर से, और फिर, और again-- प्रत्येक के साथ यह संयोग समय, हमें इस हरी परिणाम दे दी है। और यह इतना चापलूसी है यह पता चलता है, क्योंकि कि यहां तक ​​कि इस समस्या के रूप में बड़ा और बड़ा हो जाता है मामले डेटा के साथ इन दिनों के रूप में है सेट और reality-- फेसबुक और गूगल खोज परिणाम और like-- हमारे एल्गोरिथ्म करता है बस के रूप में प्रभावी ढंग से प्रदर्शन उन बड़ा काटने के साथ यह भी छोटे काटने के साथ किया था। अब यह सवाल भी जन्म देती है क्या हम वास्तव में इसी तरह से हल कर सकते हैं अंतर्ज्ञान का इस तरह से? विभाजन और जीतने के इस तरह? खैर, हम कुछ कर सकता है यहाँ यह आज की तरह। हम उपस्थिति ले सकता है। इसलिए हो सकता है जैसे 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11-- सब है कि कुशल नहीं होने जा रहा। तो, ग्रेड स्कूल की प्रतीक्षा करें। 2, 4, 6, 8, 10, 12, 14, 16, 18 और बहुत आगे है। लेकिन हम एक छोटे से बेहतर कर सकता है? मुझे पूरा यकीन है मैं नहीं कर सकता अपने आप से यह करते हैं। आप बस के लिए हास्य हमें हूँ तो अगर एक पल के लिए, हम हमारे साथ लाया है कि एक एल्गोरिथ्म सिर्फ तीन कदम मिला लेकिन यह आप यदि require-- करता हम सभी के लिए खड़े mind-- नहीं है, अगर आप। तो, हम सब के साथ अब खड़े, कदम इस एल्गोरिथ्म के एक पीछा कर रहा है। खड़े हो जाओ और आवंटित खुद के नंबर 1। समय में इस बिंदु पर तो, इस कमरे में सचमुच हर कोई उम्मीद है कि खुद के लिए सोच रहा है, हालांकि awkwardly, नंबर 1। अब इस एल्गोरिथ्म के दो कदम निम्नलिखित को शामिल करने जा रहा है। दो कदम, बंद जोड़ी किसी के साथ खड़े, एक साथ अपनी संख्या जोड़ने के लिए, और अपने नए नंबर के रूप में योग को अपनाने। त्वरित मानसिक स्वास्थ्य की जांच। हर कोई अब किस नंबर सोच रहा है? तो 2, शायद एक को छोड़कर, अजीब है, अकेला व्यक्ति। हम एक विषम संख्या है, तो कमरे में लोगों की। तो एक व्यक्ति अभी भी हो सकता है नंबर 1, वह ठीक है। लेकिन, एक यहाँ तीन कदम के लिए आप नीचे बैठना चाहिए। कदम करने के लिए वापस जाना चाहिए अन्य दो, और यदि आप होगा, दोहराएँ। अभी भी खड़ा है तो, अगर आप होना चाहिए दो कदम वापस जा रहे हैं उन लोगों के बीच। चलते रहो। कुछ लोगों को अभी भी खड़ा है। तो, अभी भी खड़े हैं, किसी के साथ जोड़ी। ठीक है, नीचे घटती। कुछ लोगों को अभी भी खड़ा है। अगर जरूरत हो मैं मदद करता हूँ। यहां महत्वपूर्ण यह उपलब्धि याद रखें, कैसे मुझे गिनती की तुलना में बहुत तेजी से इस है। तो चलो देखते हैं। मैं मदद कर सकते हैं। तो क्या संख्या में हैं आप अभी भी करने की सोच? दर्शकों: मैं 44 पर हूँ। डेविड जे मालन: 44, इसलिए तुम आगे बढ़ो और बैठ जाओ। क्या नंबर पर आप की सोच रहे हैं? दर्शकों: 74। डेविड जे मालन: 74। ठीक है, आगे बढ़ो और बैठ जाओ। अभी और कौन खड़ा है? 86। और किसी और अभी भी खड़ा है? कौन सा नंबर? मैं 67 के बारे में सुना। और फिर शीर्ष में? 32। किसी और अभी भी खड़ा और एक नंबर के बारे में सोच? ओह हाय। माफ़ कीजिए। इसी समय वापस आओ। 42। किसी और को? दर्शकों: 47। डेविड जे मालन: 47। अभी भी खड़ा है किसी और की है कौन गिना नहीं किया गया है? एक कमरे में लोगों की अंतिम संख्या तो कि 497 सीटें हैं है- जो सभी के लिए 390 filled-- है। तो यह बहुत अच्छा है। हम जल्द ही धारणा पर चर्चा करेंगे एक कंप्यूटर प्रोग्राम में बग के। लेकिन हम लंबे समय से पहले वापस करने के लिए आया हूँ। लेकिन सिद्धांत रूप में, क्या हो सकता है बस अब क्या हुआ है? तो तीन बड़ी देखते थे, भले ही इस एल्गोरिथ्म के लिए कदम उठाए हैं, उन में से प्रत्येक के बस की तरह एक बड़ा आपरेशन की थी। और यह करने के लिए इस cyclicity नहीं थी उस में आप अभी भी खड़े थे, तो आप दो कदम तीन से जा रहा रखा , 3-2 कदम 3-2 कदम। लेकिन क्या हो रहा रखा प्रत्येक यात्रा पर? इस लूप के प्रत्येक चक्र? क्या हो रहा था कहीं और कमरे में? एक ही बात है, लेकिन क्या इतना ही नहीं आप में से आधे के लिए क्या हो रहा था? नीचे बैठे हुए। और इसलिए वहाँ झूठ में इस अंतर्दृष्टि, फोन की किताब उदाहरण बहुत पसंद है, कि आप में से आधे से कर रहे हैं हर बार नीचे बैठे, समस्या शुरू कर रहा है शायद 400 लोगों के साथ, उसके बाद 200 लोगों को, 100 लोगों की तुलना में, आगे तो फिर 50 लोगों को, और। नीचे में और इसलिए हम छीलना सिर्फ एक व्यक्ति के लिए सिद्धांत, हर किसी के कुल मूल्य का सोच रही है। अब वास्तविकता, कुछ सामाजिक गतिशीलता, और कुछ गणित त्रुटियों कि परम बग के लिए योगदान कर सकता है। लेकिन सिद्धांत रूप में, मैं जबकि अभी भी दूर भरोसा था, कई दर्जन ले रही है कदम, या चरणों के सैकड़ों अपने आप को गिनती करने के लिए, गिनती करने के लिए 500 या तो लोगों का एक पूरा कमरा अब तक कम कदम उठाए जाना चाहिए था, आप केवल विभाजित कर सकते हैं क्योंकि 500 ​​और 1/2 कई बार। और तो सिर्फ फोन के साथ की तरह दूसरे दिन उदाहरण बुक, हम कुछ है था इतनी बात करने के लघुगणक, जिससे अगर हम थे सभी एक सुर में सक्रिय है, और अनदेखी इसके अलावा त्रुटियों, हम करेंगे वास्तव में हासिल किया समय से चल रहा है की उस तरह? अब निष्पक्ष हो, की तरह है, धोखा दिया कि मैं एक और संसाधन leveraged। यह सिर्फ मेरे से एक है जबकि, मैं आप के सैकड़ों leveraged। लेकिन यह है कि एक होने के लिए कहा जा सकता है समानांतर प्रसंस्करण का उदाहरण है, या बहुत ज्यादा प्रचलन में कला के एक राज्य जहां कंप्यूटर इन दिनों है अधिक CPU, या अधिक तकनीकी रूप से, अधिक एकाधिक कोर, और सही मायने में कई क्या कर सकते हैं चीजों को एक ही बार में ज्यादा आप की तरह सब हम समानांतर में, वहाँ क्या कर रहे हैं। लेकिन याद है कि क्या हम भी बुधवार को किया था यह आभास कब्जा करने की कोशिश की गई थी और कोड में यह शकल। छद्म कोड की तरह कुछ। और वास्तव में, और मैं तुम्हें लेंगे उम्मीद माफ कर दो, यह यहाँ में 80 डिग्री की तरह है। इसलिए मैं इस लेने के लिए जा रहा हूँ सिर्फ एक छोटा सा के लिए बंद। क्या मुझे लगता है हम कर लगा संक्रमण है अब एक आवेदन जिससे के लिए हम फिर से दर्शकों को संलग्न, लेकिन अंग्रेजी में एक प्रोग्राम लिखने वाक्य रचना, जिसके साथ करने के लिए की तरह यहाँ इस समस्या का समाधान। [वीडियो प्लेबैक] -मूखर्तापूर्ण नृत्य। मूँगफली का माखन और जेली खाने का समय। मूँगफली का माखन और जेली खाने का समय। रास्ता फिर! रास्ता फिर! रास्ता फिर! रास्ता फिर! अब वहाँ तुम जाओ! तुम वहाँ जाओ! तुम वहाँ जाओ! तुम वहाँ जाओ! पीनट बटर जेली! पीनट बटर जेली! पीनट बटर जेली! पीनट बटर जेली! मूंगफली, मूंगफली का मक्खन जेली! पीनट बटर जेली! एक बेसबॉल के बल्ले के साथ मूंगफली का मक्खन जेली। [अंत प्लेबैक] डेविड जे मालन: वीडियो --that, लेकिन यह एक छोटे से नशे की लत है नहीं थोड़ा परेशान हैं। लेकिन ऐसा करने के लिए, मुझे लगता है हम चाहते हैं क्या सोचा एक साथ एक प्रोग्राम लिखने के लिए कोशिश कर रहा है, जिसके लिए हम तीन स्वयंसेवकों की जरूरत है। सहज होना चाहिए कैमरा और इंटरनेट पर। सैम, ऊपर पर आते हैं। बैंगनी शर्ट, यहीं है, ऊपर पर आते हैं। और यहाँ पर से, मुझे जाने दो वापस थोड़ा आगे चलते हैं। क्रिमसन और नीले रंग की शर्ट, ऊपर पर आते हैं। बिल्कुल सही। अब चलो। ऊपर चलो, चलो। और आपका नाम क्या है? एरिका। डेविड, आपसे मिलकर अच्छा लगा। आप यहाँ इस सीट लेने के लिए करना चाहते हैं। इस सैम है। आपका नाम क्या है? एंटोनियो। एंटोनियो, आपसे मिलकर अच्छा लगा। एरिका और सैम, आप चाहें तो यहां एक सीट के लिए करना चाहते। क्या हम साथ तैयार आ गया है, के रूप में इन लोगों की खोज कर रहे हैं, बनाने के लिए जो के साथ सामग्री है एक मूंगफली का मक्खन और जेली सैंडविच। अब यह कुछ हो सकता है कि आप के लिए दी बहुत ज्यादा ले। लेकिन हम प्रत्येक दिया है हमारे तीन स्वयंसेवकों की here-- दो स्वयंसेवकों और सैम, यहाँ एक रोटी प्रत्येक की पाव रोटी, एक थाली, एक चाकू, जेली या जाम का एक जार, और मूंगफली का मक्खन का एक जार। और हाथ में लक्ष्य अब है इन तीनों के लिए होने जा रहा एक मूंगफली का मक्खन बनाने के लिए और जेली सैंडविच। लेकिन क्या हम क्या करने जा रहे हैं उम्मीद है आप सभी के बाद से audience-- निश्चित रूप से ऐसा करने के लिए कैसे पता यह तो अच्छी तरह से reality-- में साथ हमें प्रदान करने के लिए जा रहे हैं कदम से कदम निर्देश। छद्म कोड, अगर तुम जाएगा। इसलिए मैं यहां मुंशी की भूमिका में खेलेंगे। और मैं एक छोटे से करने के लिए सूची मिल गया है और इसलिए एक समय में आप में से प्रत्येक, एक के रूप में, एक संभावित बाहर कॉल शिक्षण, मैं हूँ यह लिख जरूरत के रूप में इसे दोहराने। और फिर तुम लोगों को बनाने जा रहे हैं एक मूंगफली का मक्खन और जेली सैंडविच केवल आप बता रहे हैं क्या कर रही द्वारा। तो कंप्यूटर के रूप में अपने आप के बारे में सोच। आप ही आप बता रहे हैं क्या कर सकते हैं। कोई मान्यताओं, कोई सवाल नहीं। आप सिर्फ यह करना है की जरूरत है। तो जो पहली लगाना चाहते हैं एक PBJ सैंडविच बनाने के लिए शिक्षा? वहाँ छज्जे पर। दर्शकों: रोटी का बैग खोलें। डेविड जे मालन: खोलें रोटी का बैग, अगर तुम जाएगा। तो चलो देखते हैं। की पुनरावृति करते हैं, और मिल एक छोटे से अधिक सटीक। हालांकि शुरू करने के लिए अच्छा तरीका है। दो कदम, किसी और को। अब कोई भी स्वयंसेवक के लिए करना चाहता है। सामने, दो कदम। दर्शकों: इनर खोलें के रूप में अच्छी तरह से रोटी का बैग। डेविड जे मालन: खोलें के रूप में अच्छी तरह से रोटी के भीतरी बैग। बढ़िया है, हम सीख। एक छोटे से अधिक सटीक। के इस काम मिलता है। हाँ, हरे रंग की शर्ट में। दर्शकों: [अश्राव्य] डेविड जे मालन: रोटी के स्लाइस। धीरे रोटी के दो स्लाइस को हटा दें। यह अच्छी बात है। चार कदम, किसी और को? यहाँ पर, हाँ? दर्शकों: [अश्राव्य] डेविड जे मालन: प्लेट पर रखें रोटी। पांच कदम है? हाँ, पांच कदम है? दर्शकों: [अश्राव्य] डेविड जे मालन: शीर्ष of-- ओह, हाथ पर। मूंगफली का मक्खन के शीर्ष पर हाथ रखें। मैं सिर क्या है? दर्शकों: हाँ, और खोलना। डेविड जे मालन: और-- इसे फिर से कहना। दर्शकों: [अश्राव्य] डेविड जे मालन: और डाल मूंगफली का मक्खन के बगल ढक्कन। हल्के से पर हाथ जगह मूंगफली का मक्खन के ऊपर, और खोलना, और ढक्कन लगा मूंगफली का मक्खन के बगल में। ठीक है, छह कदम। चरण छह, किसी और को। हाँ? दर्शकों: [अश्राव्य] डेविड जे मालन: फिर से कहो। दर्शकों: फिर से दोहराने कदम पाँच। डेविड जे मालन: और फिर पांच चरण दोहराएँ जो पैदा करने के लिए जा रहा है एक समस्या का एक सा अब हम इस कदम से कदम कर रहे हैं। तो अब हम पांच कदम को वापस जाओ। हल्के से शीर्ष पर हाथ जगह मूंगफली का मक्खन और खोल देना की और मूंगफली का मक्खन के बगल ढक्कन लगा। तब मूंगफली का मक्खन काबू और फिर पांच चरण दोहराएँ। तो हम उस ओवरराइड करता हूँ अनंत लूप, अगर तुम जाएगा। चरण सात, किसी और को। हाँ, पीठ में। दर्शकों: [अश्राव्य] डेविड जे मालन: दूसरे की --on शीर्ष। दर्शकों: [अश्राव्य] डेविड जे मालन: पर अन्य शीर्ष पर दूसरी ओर। आप बस यहाँ आने के लिए करना चाहते हैं? मैं कैसे अनुदेश खत्म हो? शिक्षा के बाकी क्या है? दर्शकों: कि हिस्सा की अनदेखी। डेविड जे मालन: कि हिस्सा की अनदेखी। चलो फिर से शुरू करते हैं। सात कदम। दर्शकों: [अश्राव्य] डेविड जे मालन: के साथ समझ इस hand-- का विरोध करने के लिए अच्छा है। यह वास्तव में अच्छा है। दर्शकों: [अश्राव्य] डेविड जे मालन: और प्लास्टिक jar-- दर्शकों: [अश्राव्य] डेविड जे मालन: और twist-- दर्शकों: [अश्राव्य] डेविड जे मालन: दो सेकंड के लिए। बस मूंगफली का मक्खन जार खुला। मैं तुम्हें माफ कर देंगे उम्मीद है। तो चलो हम वहाँ मिल कल्पना करते हैं। मूंगफली का मक्खन जार खोलें। [वाहवाही] डेविड जे मालन: आठ चरण, चलो चलते हैं। आठ चरण, हाँ, पीठ में। दर्शकों: [अश्राव्य] डेविड जे मालन: अच्छा। चरण नौ, हाँ? दर्शकों: [अश्राव्य] डेविड जे मालन: की --out मूंगफली का मक्खन जार। और-- और क्या? दर्शकों: [अश्राव्य] डेविड जे मालन: और डाल दिया चाकू वापस मूंगफली का मक्खन में। दस कदम। दस कदम। दर्शकों: [अश्राव्य] डेविड जे मालन: चाकू रख दिया बाहर है, और फिर सील हटा दें। अच्छा लगा। मूंगफली का मक्खन के बाहर। ठीक है, 11 कदम। दर्शकों: [अश्राव्य] डेविड जे मालन: ठीक है, ग्रे कंप्यूटर नीले या लाल कंप्यूटर का पालन करें। अच्छा। [वाहवाही] डेविड जे मालन: हमें घर ले आओ। युगल और कदम। आगे क्या होगा? 12 कदम। चरण 12। हाँ? दर्शकों: के स्लाइस की एक रखो धीरे अपने हाथों से एक पर रोटी। डेविड जे मालन: अपने हाथों से एक। और फिर, 13 कदम। हाँ? दर्शकों: [अश्राव्य] डेविड जे मालन: रोटी के --on टुकड़ा। अच्छा। काफी अच्छा। हाँ, 14 कदम। दर्शकों: 13 कदम पूर्ववत करें। डेविड जे मालन: 13 कदम पूर्ववत करें। की जेली पर चलते हैं। यह एक 100- कदम कार्यक्रम है लेकिन हम 15 कदम पर थे कर रहे हैं। हाँ। दर्शकों: [अश्राव्य] डेविड जे मालन: 7 का उपयोग कर 13 के माध्यम से जेली उन इतनी अच्छी तरह से चला गया, क्योंकि। दोहराएँ के माध्यम से 7 कदम 13, जेली का उपयोग कर। तो के निचले आधे काबू शीर्ष पर एक हाथ से जेली जार। के दूसरी ओर अन्य शीर्ष, वह हिस्सा है, की अनदेखी विरोध करने हाथों से काबू, ढक्कन और प्लास्टिक जार तल में, और दो सेकंड के लिए मोड़। फिर जेली जार खुला। और अंत में, के लिए कोशिश करते हैं हमें खाद्य कुछ दे। चरण 16। तो क्यों न हम वहाँ इसे छोड़ नहीं है। करने के लिए बहुत बहुत धन्यवाद हमारे तीन स्वयंसेवकों। [वाहवाही] हम एक छोटे से CS50 है आप के लिए तनाव गेंद। यह एक होने जा रहा था सैंडविच but-- तो क्या हुआ बिंदु एक होने से परे था, एल्गोरिथ्म के साथ मजाक का सा? लेकिन वास्तविकता यह है कि जब भी यदि आप एक कंप्यूटर प्रोग्रामिंग कर रहे हैं, आप सुपर सटीक होने की जरूरत है। के रूप में जटिल या डराना अपने कंप्यूटर के रूप में बहुत अच्छी तरह से, आप के लिए हो सकता है कुछ गलत हो जाता है, जब कम से कम, वास्तविकता यह एक सुंदर गूंगा है है हमें मनुष्य द्वारा आविष्कार किया गया था कि डिवाइस, और का एक सबसेट ऐसा ही कर सकते हैं कि हम क्या निश्चित रूप से faster-- कभी कभी do-- लेकिन यह कैसे पता नहीं है मान्यताओं बनाने के लिए। उस पर होना करने के लिए पता नहीं है आप के रूप में एक ही तरंग दैर्ध्य। यह केवल ठीक करना होगा क्या आप यह बता। और अगर आप मारा जा सकता हूँ, शायद, के रूप में हम शुरू साथ वास्तविक कोड लिखने पहली समस्या सेट और परे, इसे बनाने के लिए अभी कितना आसान है एक इंसान के रूप में एक धारणा है, और मैं संभालने की जरूरत की आशा नहीं यह मामला है, या उस कोने का मामला है, इतनी बात, कि हो सकता है बहुत अच्छी तरह से करने के लिए उदाहरण के सैम ही था, तो उठता जेली के दबाने योग्य जार, जबकि हर किसी के रूप में कुछ कांच के जार था अच्छी तरह से। इसलिए हम बारी से पहले हमारे कुछ वास्तविक कोड करने के लिए ध्यान, मुझे शुरू करने की अनुमति यहां येल में पाठ्यक्रम के सिर। हमारे दोस्तों Scaz, एंडी, और जेसन आते हैं और नमस्ते कहने के लिए। [वाहवाही] SCAZ: हम अस्थायी रूप से जेसन खो दिया है। फिर हाय, सब लोग। मेरा नाम Scaz है। मैं 2001 के बाद से येल में अध्यापन किया गया है। और जब मैं अध्यापन नहीं कर रहा हूँ, मेरे शोध रोबोटिक्स में है और कृत्रिम बुद्धि। और मैं आज है कि घोषणा कुछ हफ़्ते में है कि शुरू कर रहा है, हम कुछ लाने के लिए जा रहे हैं CS50 के लिए अनुपूरक सामग्री बात करने के लिए खुफिया सॉफ्टवेयर के बारे में। हम के बारे में बात करने जा रहे हैं नेटफ्लिक्स और Hulu जैसे स्थानों फिल्मों की सिफारिश कर सकते हैं जो आप देखना चाहते हो सकता है। हम कहाँ के बारे में कैसे बात करेंगे चालक-कम कारों वास्तव में काम करते हैं। और हम जमीन के लिए सक्षम हो जाएगा अवधारणाओं में इन चीजों को आप सीख रहे हैं कि इस वर्ग में दी। इन सब बातों के होते हैं, क्योंकि उसी नींव पर बनाया गया। और कहा कि क्या यह है श्रृंखला का पता लगाने जाएगा। इसलिए मैं वास्तव में देख रहा हूँ आप के और अधिक देखने के लिए आगे सभी, और आप को पाने के लिए जा रहे हैं बहुत जल्द ही हम सब से अधिक देखते हैं। मुझे तो जेसन परिचय। जेसन: हाय सब लोग। मेरा नाम जेसन है। दुर्भाग्य से मैं करने के लिए चला गया एक छात्र के रूप में हार्वर्ड। यही कारण है कि कटौती करने के लिए जा रहा है वास्तविक धारा से बाहर। और अब मैं एक व्याख्याता के रूप में यहाँ हूँ कंप्यूटर विज्ञान विभाग। और मैं निश्चित रूप से चलाने के मदद कर रहा हूँ Scaz, दाऊद और एंडी के साथ। एंडी: अरे दोस्तों। मेरा नाम एंडी। मैं वास्तव में केवल येल हूँ अब सही मंच पर छात्र। [वाहवाही] मैं, बर्कले कॉलेज में हूँ मूल रूप से Solon, ओहियो से। और मैं उन बच्चों में से एक था जहां, मैं येल करने के लिए आया था, मैं सच है कि मैं कभी नहीं सोचा था कभी भी फिर से एक नंबर पर नजर है। और फिर मैं आप की जरूरत महसूस की दोनों विज्ञान और QR स्नातक करने के लिए श्रेय देते हैं। और तो मेरे नए वसंत, मैं लिया एक वर्ग है, यहाँ एक सीएस, परिचय सीएस वर्ग येल में। इस तरह से है जैसे मैं था वास्तव में बहुत अच्छा। मैं वास्तव में समाप्त हो गया और जब की घोषणा एक वैश्विक मामलों प्रमुख के रूप में, कौशल मैं सीएस और प्रोग्रामिंग में सीखा किसी भी क्षेत्र के लिए इतने लागू कर रहे हैं आप करने के लिए चुन। और येल में यहां स्टाफ, हम काम पर इतनी मेहनत से किया गया है आप लोगों के लिए तैयार करने के लिए। और हम देखने के लिए तत्पर सभी खंड और कार्यालय समय में। इसलिए। [वाहवाही] डेविड जे मालन: धन्यवाद। तो क्लास शुरू हुआ, बस से पहले हम एक अवसर था परिसर के चारों ओर चलने के लिए और एक सेलफोन के साथ ले सच का वीडियो के रूप में कुछ selfies यहां येल परिसर के अपने पहले दौरे। और इसलिए हम हम किसी न किसी का हिस्सा था Scaz और एंडी के रूप में वास्तव में इस की कटौती और जेसन परिसर के चारों ओर मुझे ले गया। [वीडियो प्लेबैक] [आवाज] -David। येल -आपका स्वागत है। -आपको देख कर खुशी हुई। -आपसे मिलकर अच्छा लगा। हम एक दौरे पर जाने -Can? के एक दौरे पर जाने -Let। -Road दौरे। -यह साइन थोड़ी देर के लिए किया गया है। -Whah, CS50। -Hurry! जाओ, चलो, घुमो, प्रस्थान करो। आप [अश्राव्य] Harkness टॉवर चाहिए। -और हम एक दो बार देखा था। [वाहवाही] बाइक के लिए बाहर -Look! आह! फ्रैंक हाय। -क्या हो रहा है? -आप कैसे है? -आपको देख कर खुशी हुई। वीडियो के लिए -आपका स्वागत है। बहुत उत्साहित कार्य न करें। -मैं Silliman प्यार करता हूँ। आह! -यह के बाद से लगभग तीन घंटे हो गया है जेसन आइसक्रीम और Nutella था। इसलिए हम पर वापस बंद करने के लिए मिल गया है एक छोटा सा के लिए Silliman। -यह भी नहीं है [सुनाई] अभी तक, बस तथ्य वे यहाँ यह है कि इतना अद्भुत है। यार, हर भोजन में Nutella नहीं है। पिछले साल भी, वहाँ था। हाँ। अब तक येल के बारे में ज्यादा -tell। लेकिन मुझे लगता है कि अब वहाँ पर टीडी है। और कहा कि परिसर से बाहर माना जाता है। , यहाँ हम गोथिक वास्तुकला है। विश्व प्रसिद्ध। हम कुछ और गोथिक वास्तुकला है। और निर्माण, और अधिक गोथिक वास्तुकला। नमस्ते। हम कार्यालय समय बिता रहे हैं, जहां यह है हॉगवर्ट्स में गुरुवार के माध्यम से मंगलवार, [अश्राव्य] के रूप में। -ठीक है। यही कारण है कि दौरे के लिए यह बात है। हम येल विश्वविद्यालय के पर हैं लॉ स्कूल, जहां आज के व्याख्यान जगह लेने के लिए के बारे में है। के दशक में चलें। [अंत प्लेबैक] डेविड जे मालन: और लगता है कि अब हमें यहाँ लाता है। तो इस प्रकार अब तक, हम किया गया है स्यूडोकोड पर ध्यान केंद्रित कर, जो इस अंग्रेजी की तरह वाक्य रचना है। यह कोई निर्धारित विनिर्देश है। यह सिर्फ आप कुछ का उपयोग कर रहा है सहज ज्ञान युक्त भाषा अगर आप आप क्या करना चाहते हैं समझाना चाहता हूँ। लेकिन संक्रमण के लिए अब शुरू करते हैं कोड के लिए, ज्यादातर लोगों को कहेंगे। लेकिन अधिक ठीक, कुछ स्रोत कोड के रूप में जाना जाता है। यह मनुष्य के उस भाषा है कंप्यूटर ultimately-- कि लिखने संभवतः की कुछ संख्या के बाद steps-- अंततः समझता इतनी के रूप में कुछ करने के लिए कैसे पता करने के लिए। आप की एक झलक देखा था कि शायद बुधवार को यह। यह एक उदाहरण है कि अविश्वसनीय रूप से, underwhelming चलाने के लिए जब बस "हैलो दुनिया कहते हैं।" और यह कहा जाता है एक भाषा में लिखा है वाक्य रचना से बहुत समान है, जो सी, अन्य भाषाओं में से एक बहुत कुछ करने के लिए , आपको पता नहीं हो सकता है कि लेकिन, जावा की तरह के बारे में सुना है हो सकता है और सी ++, और अजगर, और रूबी, वास्तव में पसंद है, और और, हम करेंगे सी का उपयोग सेमेस्टर की ज्यादा खर्च करते हैं, और उसके बाद के अंत की ओर सेमेस्टर, यह इमारत पर, और शुरू करने के लिए किसी भी अन्य भाषाओं की संख्या। , पीएचपी, और जावास्क्रिप्ट उनमें से एसक्यूएल नामक एक डेटाबेस भाषा। लेकिन सी के साथ, हम क्या होगा इस बॉटम-अप समझ वास्तव में कैसे कंप्यूटर काम की, आप उन लोगों के साथ क्या कर सकते हैं, और आप समस्याओं का समाधान कैसे कर सकते हैं सभी को और अधिक प्रभावी ढंग से इस से हमने चर्चा की कि लेयरिंग बुधवार और खड़े पर दूसरों के कंधों पर। लेकिन उस पर आने के लिए। आज हम एक सरल पर्यावरण को देखो लेकिन एक मौलिक समान पर्यावरण से खरोंच के रूप में जाना जाता है एमआईटी मीडिया लैब में हमारे मित्रों। यह एक चित्रमय प्रोग्रामिंग भाषा, खरोंच, जिससे आप खींच सकते हैं और बातें छोड़ कि पहेली टुकड़े की तरह लग रही है कि केवल गूंथ अगर यह है तार्किक या कार्यक्रम भावना ऐसा करने के लिए। लेकिन यह करने के लिए हमें अनुमति देने के लिए जा रहा है सब के बारे में एक बातचीत एक ही प्रोग्रामिंग की बुनियादी बातों में आप में से कुछ है कि पहले से ही पता हो सकता है, कि आप में से कई नहीं हो सकता है बिना का कुछ भी पता स्पष्ट रूप से फंस गया पाने के लिए, बौद्धिक रूप में अर्धविराम की शुष्क वाक्य रचना, और कोष्ठक, और उद्धरण, और पसंद है। सभी, जिनमें से जल्दी पर, एक विकर्षण हैं दिलचस्प क्या कर रहे हैं करने के लिए और वास्तव में उपयोगी विचारों। तो चलो एक त्वरित ले चलो पर्यावरण पर नज़र यहाँ, इतना है कि आप इंतजार कर रहा है क्या पता है। और वास्तव में, खेल के बीच हम कुछ कार्यक्रमों में लिखा जाता है खेल सकते हैं CS50 के स्वयं के पूर्व छात्रों द्वारा। उनमें से एक, अपने आप को, मैं इस एक हो जाएगा मेरे लिए ग्रेजुएट स्कूल में लिखा है। मैं एक स्वयंसेवक ले सकता है कौन खेलने के लिए तैयार है बहुत पहले समय के लिए एक खेल। ज़रूर। आ जाओ। आपका नाम क्या है? दर्शकों: एंजेला। डेविड जे मालन: एंजेला, ऊपर पर आते हैं। तो स्क्रैच कुछ साल के लिए बाहर कर दिया गया है। और मैं ग्रेजुएट स्कूल में था, मैं, एमआईटी में पंजीकृत पार था प्रोफेसर मिशेल Resnick के ले जा रही है शैक्षिक प्रौद्योगिकी पर पाठ्यक्रम। और हम बहुत पहले के बीच में थे वास्तव में बीटा के लिए दुनिया में छात्रों परीक्षण स्क्रैच। और मेरा परियोजना क्या एंजेला था अब कृपा से स्वेच्छा से दिया है Oscartime बुलाया खेलने के लिए। तो मैं आगे जाने के लिए जा रहा हूँ और डबल यहां आइकन पर क्लिक करें। यह एक प्रोग्रामिंग को खोलने के लिए जा रहा है हम जल्द ही में डुबकी हूँ कि पर्यावरण। मैं पूर्ण स्क्रीन करने के लिए जा रहा हूँ यह यहां एंजेला, के लिए। मैं हरे रंग की हिट करने के लिए जा रहा हूँ बस एक पल में झंडा। कचरा की और फिर एक पूरी बहुत कुछ आसमान से गिर रहा है। और आप माउस का उपयोग करने के लिए जा रहे हैं यहां वास्तव में खींचें और ड्रॉप करने के लिए ऑस्कर के कचरे के डिब्बे में कचरा। तो तुम आगे बढ़ो और क्लिक करने के लिए करना चाहते हैं हरे रंग का झंडा, खेल शुरू हो जाएगा। [संगीत बजाना] ओह, मैं कचरा प्यार करता हूँ। गंदे या गंदे या धूल भरी कुछ भी। प्रचंड या सड़ा हुआ, या जंग कुछ भी। हाँ, मैं कचरा प्यार करता हूँ। क्या तुम सच में देखना चाहते हैं कबाड़ कुछ, यह देखो। मैं यहाँ एक स्नीकर है कि फटा हुआ और पहना है। यह छेद के सभी पूर्ण रखती है और लेस फाड़ रहे हैं। मेरी माँ से एक उपहार दिन मैं पैदा हुआ था। मैं इसे प्यार करता it's-- क्योंकि डेविड जे मालन: इन दिनों --green बस कचरे में सब कुछ फेंक होना। और तो क्या में से एक CS50 के अपने स्टाफ did-- जॉर्डन, जो आप कर सकते हैं today-- वास्तव में है मिलना आज के समय के लिए इस अद्यतन। और इसलिए मुझे खोलने के लिए अनुमति बजाय एंजेला के लिए एक रीमिक्स। और हम के लिए बजाय इस खेलेंगे अब आप कर रहे हैं, जहां कुछ ही क्षणों चाहे वह बीच तय करने के लिए किया जा रहा कचरा फेंक में कुछ करने के लिए, या रीसायकल या यह खाद। इसलिए का एक सा है आप पर दबाव पाने के लिए अपने 392 के सामने यह अधिकार हॉल में यहां 497 सहपाठियों, अगर आप। [वीडियो प्लेबैक] [संगीत बजाना] -ओह मैं कचरा प्यार करता हूँ। गंदे या गंदे या धूल भरी कुछ भी। प्रचंड या सड़ा हुआ या जंग कुछ भी। हाँ, मैं कचरा प्यार करता हूँ। क्या तुम सच में देखना चाहते हैं कबाड़ कुछ, यह देखो। मैं यहाँ एक स्नीकर है कि फटा हुआ और पहना है। यह छेद के सभी पूर्ण है और लेस फाड़ रहे हैं। मेरी माँ से एक उपहार दिन मैं पैदा हुआ था। यह कचरा है, क्योंकि मैं इसे प्यार करता हूँ। ओह, मैं कचरा प्यार करता हूँ। गंदा, या धूंधला, या धूल भरी कुछ भी। प्रचंड या सड़ा हुआ या जंग कुछ भी। हाँ, मैं कचरा प्यार करता हूँ। यहाँ कुछ और सड़ा हुआ सामान है। मैं यहाँ कुछ newspaper-- है [अंत प्लेबैक] डेविड जे मालन: --are वास्तव में खाद। लेकिन हमारे स्वयंसेवक, एंजेला करने के लिए धन्यवाद। हम एक तनाव गेंद है के रूप में अच्छी तरह से यहाँ तुम्हारे लिए। इसलिए आपका धन्यवाद। तो यह एक मेरे द्वारा लिखा गया था। एक वास्तविक पूर्व छात्र द्वारा लेकिन अब एक एक खेल है, जो इस पर अमल करते हैं। इस भाषा में सभी बुलाया स्क्रैच, हम जल्द ही होगा कि की परतों वापस छील। लेकिन हम कैसे like-- चाहते हैं तो के बारे में एक और स्वयंसेवक? ठीक है। आ जाओ। आपका नाम क्या है? झलक? लांस। लांस, ऊपर पर आते हैं। आपसे मिलना अच्छा रहा। इस रास्ते पर आते हैं। तो यह एक हो सकता है आप में से कुछ के लिए परिचित विषय। लेकिन अगर आप भी देखेंगे कि अन्तरक्रियाशीलता नहीं हो सकता है, आप वास्तव में हो सकता है जिससे चारों ओर बढ़ चरित्र की भूमिका। आपसे मिलना अच्छा रहा। डेविड। मैं, सुपरमैन तुम्हें दे। निर्देशों के बारे में होगा स्क्रीन पर आने के लिए। लेकिन संक्षेप में, आप करने जा रहे हैं स्वादिष्ट सामान को पकड़ने के लिए चाहते हैं, और बमों और अन्य चीजों से बचें। पूरी तरह कर्सर के साथ। तो अंतरिक्ष बार मारा। -Pikachu। डेविड जे मालन: पकड़ो बाईं तरफ के सामान, सही पर सामान पकड़ नहीं है। [संगीत बजाना] तो यहाँ एक पिछले एक। हम एक हो सकता था यहाँ और अधिक स्वयंसेवक। हम कुछ विश्राम लगा पीले shirt-- में from-- बुधवार से। आपका नाम क्या है? मेरी, मेरी अप पर आते हैं। और बुधवार को हम पेश किया याद बाइनरी की धारणा, और बाइनरी बल्बों। यह अब एक वास्तव में है कि एक ही इंटरफ़ेस का कार्यान्वयन हम प्रकाश के साथ आईपैड पर था कि यहां बल्ब, लेकिन डिजिटल रूप में प्रदान की गई। और एक तनाव बजाय , डेविड आपसे मिलकर अच्छा लगा ball--। हम कुछ प्रकाश लाया कैम्ब्रिज से बल्ब। आप कर सकते हैं, तो उन पर क्लिक करके बल्ब, उन पर और बंद करने के लिए बारी बाइनरी के साथ आते हैं के प्रतिनिधित्व के 256 कहते हैं। और तुम में देखेंगे बीच, वर्तमान मिलान। एक पर इतना है कि। तो सबसे बाएँ बिट पर है। मैरी: हाँ, [सुनाई] डेविड जे मालन: ठीक है, इसलिए हम ओह just-- है। तो यह 128 स्तंभ है। इसलिए हम 128 अप करने के लिए कर रहे हैं। हम 256 को पाने के लिए मिला है। और तुम पर टिंकर कर सकते हैं और बंद, कोई बड़ी बात नहीं। या आपको लगता है कि 128 हिट कर सकते हैं अधिक बार अगर आप चाहते हैं। ठीक है, अच्छा है। 24। हाँ, करीब हो रही है। करीब! ओह, समस्या तो क्या है? तो मुद्दा क्या है? तो हम करने के लिए क्या जरूरत है इस समस्या को हल करें? तो हम एक और बिट की जरूरत है। और यह पूरी तरह से है वास्तविकता में उचित, है ना? आप नंबर से गिनती करने के लिए चाहते हैं 1 करने के लिए 4 2-3 करने के लिए 5, 6, 7, 8, 9 वास्तव में 10 के लिए रोल करने के लिए, आप कर रहे हैं एक अतिरिक्त बिट की जरूरत के लिए जा रहा है। तो वास्तव में चलो यहां उल्टा, और ऊपर आ जाहिर है कि था with-- एक सेट अप करने के लिए होती। तुम सिर्फ एक बल्ब के साथ 256 भी नहीं कर सकते। तो कैसे बस नंबर 50 के बारे में? संख्या 50। बहुत बढ़िया। प्रशंसा का एक बड़ा दौर के रूप में अच्छी तरह से मेरी और उसकी के लिए। धन्यवाद। तो इस रूप में जानबूझकर topic-- कि was-- वास्तव में पुनरावृत्ति होना होगा। सबसे बड़ा मूल्य है कि आप कर सकते हैं आठ बिट, या एक बाइट के साथ प्रतिनिधित्व करते हैं, वास्तव में 256 है। लेकिन अगर आप शुरू नहीं करता है, तो हम के रूप में, 0 से गिनती होने से कर रखने के लिए लग रहे हो बंद उन बिट्स के सभी। लेकिन अब की अंतर्निहित में डुबकी चलो इस माहौल के कार्यान्वयन, और इन विचारों में से कुछ के अलावा तंग। एक पल में हम एक को देखने के बारे में हो तो कुछ अलग प्रोग्रामिंग बुनियादी बातों। जो पहले के हम बयान फोन करता हूँ। क्रिया की तरह है, अगर तुम जाएगा। कार्रवाई। किया जाना चाहिए कि हालात। और एक पल में आप देखेंगे इस तरह से देखना है कि ब्लॉक। उदाहरण के लिए, "नमस्ते विश्व" कहते हैं। या फिर एक दूसरे की प्रतीक्षा करें। या ध्वनि म्याऊ खेलते हैं। और वास्तव में पर्यावरण में हम यह कर रही हो जा रहे हैं, जो स्क्रैच कहा जाता है। और मैं बिना खरोंच तक खींच यदि किसी भी वास्तविक कोड preloading, चलो इस पर एक त्वरित देखो ले चलो यूजर इंटरफेस है, तो बात करो। नियंत्रण जिसके साथ हम बातचीत। के यहां छोड़ दिया शीर्ष पर स्क्रीन, मेनू के नीचे, हम तो बात करने के चरण है। तो स्क्रैच हम स्प्राइट फोन करता हूँ क्या है। यह एक चरित्र है। और वह द्वारा नियंत्रित किया जा सकता उसके खिलाफ कार्यक्रमों लेखन। और वह ऊपर और नीचे स्थानांतरित करने के लिए सक्षम हो जाएगा और, बाएँ और दाएँ इस माहौल में न सिर्फ चलती द्वारा माउस, लेकिन प्रोग्राम के। मैं उसे सही चलना बता सकते हैं नीचे या की तरह, ऊपर, छोड़ दिया है। और मैं अन्य लागू कर सकते हैं sprites या पात्रों के रूप में अच्छी तरह से। दरअसल, तल पर यहाँ कहाँ है आप स्प्राइट की अपनी सूची देखेंगे। फिलहाल, मैं सिर्फ है एक है, लेकिन मैं और अधिक बना सकते हैं, और वे वास्तव में वहाँ नीचे दिखाई देंगे। तो अगर आप की तरह, एक पल के लिए उल्टा यदि उदाहरण के लिए Oscartime--, ऑस्कर, बाईं तरफ, कचरा कर सकते हैं, एक प्रेत था। और बीच में एक चीज है, बिन रीसाइक्लिंग, एक और प्रेत था। और खाद बिन एक और प्रेत था। और हर टुकड़ा कचरा या रिसाइक्लेबल्स कि आसमान से गिर रहा था एक प्रेत, जिनमें से प्रत्येक भी है, अलग-अलग प्रोग्राम किया गया था। आप कैसे इस कार्यक्रम है? वैसे, यहाँ सही पर खत्म हाथ की ओर लिपियों क्षेत्र है। और यह जहां हम कर सकते है खींचें और पहेली टुकड़े ड्रॉप। एक सप्ताह में, यह होने जा रहा है जहां हम यों कोड लिखने एक कुंजीपटल के अधिक के साथ है, लेकिन के लिए आज यह खींचने और छोड़ने हो जाएगा पहेली टुकड़े, पट्टियाँ जो कर सकते हैं सभी के लिए ठीक बीच में यहां पाया जा। दरअसल, बीच में यहां एक पूरी गुच्छा है पहेली की श्रेणियों में से टुकड़े या ब्लॉक। एक प्रस्ताव से संबंधित है, देखो, ध्वनि, ऊपर और नीचे जा रहा है एक कलम, डेटा, घटनाओं नियंत्रित करते हैं। नहीं काफी यकीन है कि अभी तक इन सब का क्या मतलब है, लेकिन आप वे है कि देखेंगे अच्छी तरह से वर्गीकृत किया गया। और एक कार्यक्रम में लिखने के लिए स्क्रैच, चलो ठीक है कि ऐसा ही करे। मैं तहत शुरू करने के लिए जा रहा हूँ घटनाक्रम, और यहाँ यह एक खींचें। हरे रंग का झंडा क्लिक किया। अब यही वजह है कि एक? वैसे हमारे स्वयंसेवकों याद है कि आया था, पहली बात मैं या वे कहते हैं कि हरी क्लिक किया गया था ऊपर दाहिने हाथ कोने में झंडा। और कहा कि अभी कार्यक्रम शुरू होता है। तो यह है कि घटना जब ऐसा होता है, मेरी क्या करने की इच्छा है? मुझे लगता है नीचे जाने के लिए जा रहा हूँ, और मैं क्या करने जा रहा हूँ "हैलो कहते हैं।" और मैं इस बदलाव करने जा रहा हूँ और कुछ ऐसा कह "नमस्ते येल।" और अब मैं ज़ूम करने के लिए जा रहा हूँ बाहर, हरे रंग का झंडा, क्लिक करें और देखा, मैं एक कार्यक्रम में लिखा है। यह सब है कि यह उत्साहजनक नहीं है बस अभी तक है, लेकिन इस वास्तव में, जहां प्रत्येक उन लेखक शुरू किया, दोनों में सुपरमैन, और साथ बाइनरी बल्ब, और Oscartime, और इतने अधिक उदाहरण हैं। आप सुपर सरल शुरू, और तो आप परत करने के लिए शुरू, और सुविधाओं और कार्यक्षमता पर जोड़ें। तो इन परतों क्या कर रहे हैं से मिलकर करने जा रहे हैं? खैर, बयानों से परे है, हम भी करेंगे छोटे से अधिक fancily हैं कि बातें हैं बूलियन अभिव्यक्ति कहा जाता है, Bool नाम किसी के बाद। और एक बूलियन अभिव्यक्ति बस एक है सही है या गलत है कि अभिव्यक्ति, हाँ या नहीं, 1 या 0। ऐसे किसी भी ध्रुवीय विपरीत। यह सच है या नहीं या तो है। लेकिन हम यह भी देखने के लिए जा रहे हैं इस तरह लग सकता है कि लोगों को। तो उदाहरण के लिए, माउस नीचे है? आप करेंगे, अगर वे तरह के सवालों का कर रहे हैं। माउस, नीचे या तो है सच है या यह गलत नहीं है। 1 या 0, अगर तुम जाएगा, मानचित्रण हो जाता है। यह सच है कि एक है, झूठी 0 है। खैर क्या इस से भी कम के बारे में? या तो, यह इस से कम है? यही कारण है कि हर तरह का सवाल है। और अगर आप दो डाल वहाँ में नंबर, या तो एक्स वाई या की तुलना में कम होने जा रहा है Y के बराबर, या वाई की तुलना में अधिक है, लेकिन हम देखेंगे इस ब्लॉक, बस है सवाल का जवाब देने जा रहा है, इस तुलना में कम है? हम भी कुछ इस तरह देख सकते हैं। मार्मिक माउस संकेत। स्क्रैच में तो, आप पूछ सकते हैं सवाल है, स्प्राइट है माउस सूचक को छू? दूसरे शब्दों में, कर्सर मँडरा रहा है टोपी, या समकक्ष से उपर है? हम Anding चीजें एक साथ दिखाई देंगे। आप दो सवाल पूछना है, और कर सकते हैं सुनिश्चित करें कि उन दोनों कि हाँ आप दे सकते हैं या सही जवाब से पहले कुछ करने के लिए एक निर्णय लेने। लेकिन फिर आप कैसे निर्णय लेते हैं? खैर, हम इन की स्थिति है। और हम में यह देखा हमारे फोन की किताब का उदाहरण है। बाईं ओर देख रहे हैं या माइक स्मिथ के लिए सही है। और हालत में है, तो आप संभवतः कुछ करते हैं, यदि एक बूलियन अभिव्यक्ति सच है। और वास्तव में, अब आकार पर ध्यान दिया। इस प्लेसहोल्डर अब ठीक नहीं है हम fit-- कर सकते हैं जहां ऊपरी पर मुझे लगता है कि आकार slide-- एक उल्टा है। यह बहुत ही आकार नहीं है। और वास्तव में, आप देखेंगे कि स्क्रैच गतिशील बातें आकार बदलता है पहेली टुकड़े फिट है, लेकिन करने के लिए आकार महत्वपूर्ण है। इस बात की तरह लग रहा है कि, और वास्तव में यह है मोटे तौर पर एक ही आकार कि वहाँ में फिट होना चाहिए। और हम कुछ करना चाहते हैं, तो इस तरह या उस तरह, यदि वरना, हम इस पहेली है स्क्रैच में टुकड़े के रूप में अच्छी तरह से। अब तुम चाहते थे लगता है अगर नहीं तो, वरना, तो ऐसा। दूसरे शब्दों में, एक सड़क में तीन तरह से कांटा। वैसे आप क्या कर सकते हैं सिर्फ इस पर glancing द्वारा? मैं इस पहेली टुकड़ा ले जा सकते हैं, और इसे फिट करने के लिए प्रतीत नहीं होता है, लेकिन फिर, स्क्रैच जा रहा है हमारे लिए अच्छी तरह से फिर से आकार करने के लिए। मैं परत करने के लिए शुरू कर सकता है एक साथ इन बातों को। तो अब मैं एक तीन तरह की है अगर यह सच है कांटा, यह करते हैं। यह दूसरी बात यह है कि अगर यह सच है वरना, किसकी दूसरे रास्ते पर चलना है, इस तरह से जाना। और मपेट फिल्म में, सड़क में कांटा, तो बात है, येल या स्टैनफोर्ड के बीच किया गया था, ठीक है कि सिर्फ दो शर्तों। या तो कुछ और, इस तरह से जाना है कि जिस तरह से जाना। खैर, यह भी प्रोग्रामिंग में मौजूद छोरों। और हम इन में पहले से ही उपयोग किया है वर्ग और स्यूडोकोड कोड में, और निश्चित रूप से उन में हमेशा के लिए स्क्रैच कार्यक्रम। स्क्रैच इस पहेली टुकड़ा है कि बस आप हमेशा के लिए कुछ कर देना होगा। और कभी कभी आप चाहते हैं हमेशा के लिए कुछ करने के लिए। यह बात है, जरूरी नहीं कि एक बग नहीं है आप एक घड़ी जा रहा रखना चाहते हैं, क्योंकि या एक खेल खेलते रहना। या फिर आप एक परिमित संख्या निर्दिष्ट कर सकते हैं कदम, यहां यह दोहराने ब्लॉक के साथ के रूप में, कुछ है जो 10 बार दोहराना होगा। हम चर सेट कर सकते हैं, हम जल्द ही देखेंगे। और आत्मा में समान चर, साथ एक्स, या Y, या जेड की तरह बीजगणित, करने के लिए। यह स्टोर कर सकते हैं कि प्रतीकात्मक कुछ है कुछ मूल्य, जानकारी के कुछ टुकड़े, तुम चाहते हो सकता है कि बाद के लिए याद करने के लिए। इस का सबसे अच्छा उदाहरण हो सकता है आप एक अंक है, जहां एक खेल है, जैसे दानव ट्रक में। कितने केक के टुकड़े और whatnot आप को पकड़ने गए थे? वैसे, यह एक चर हो सकता है 0 पर शुरू होता है कि स्कोर बुलाया। और फिर हर बार हम पकड़ा केक या कैंडी, या जैसे का टुकड़ा, यह वृद्धि हो जाती है। यह एक बार में एक ही करने के लिए कहा जाता है। और हां एक चर भंडार एक लगता है कि जैसे सूचना का टुकड़ा। तो फिर वहाँ सरणियों है, और हम आया हूँ वापस इन करने के लिए एक या दो सप्ताह के समय में, लेकिन एक सरणी एक तरह की तरह है अंदर सूची या एक झोला, जिसमें से आप आभासी बातें रख सकते हैं। यह आपको और अधिक स्टोर करने के लिए अनुमति देता है सूचना का एक टुकड़ा से अधिक है। और कहा कि उपयोगी हो सकता है खेल में, आप कर रहे हैं एक तरह से चारों ओर घूमना चीजें उठा। और हो सकता है आप रखना चाहते हैं केक के उन टुकड़ों के सभी चारों ओर है, और सिर्फ खाने के लिए नहीं उन्हें एक के बाद एक। और फिर वहाँ है एक हम करेंगे शौक़ीन निर्माण कहा जाता कार्यों या प्रक्रियाओं के लिए आते हैं। और हम जा रहे हैं, हालांकि तेजी से यहाँ, हम करेंगे ये एक बहुत देखते हैं कि वहाँ समस्याओं के लिए प्राकृतिक समाधान कि हम मुठभेड़ जा रहे हैं। हमारे कार्यक्रमों शुरू बड़ा हम करेंगे हो रही है में पैटर्न नोटिस शुरू हम लिख रहे हैं कि कोड, हम कर रहे हैं पहेली टुकड़े खींचने और छोड़ने। और जैसे ही आप अपने आप को नोटिस के रूप में कर रही है कुछ बार-बार, या बुरा अभी तक कॉपी करने और चिपकाने प्रोग्रामिंग आप लिखा है कि कोड, कि शायद एक है अवसर बाहर कारक के लिए जो कुछ भी आप प्रतिलिपि रखना और चिपकाने, और इसे लगाने कुछ में एक "समारोह।" कहा जाता है लेकिन ज्यादा में उन लोगों के बारे में अधिक लंबे समय से पहले और अधिक विस्तार। और फिर भी शौक़ीन सुविधाओं है। और अधिक आराम से आप उन लोगों के लिए, या APCs या समकक्ष ले रही है, स्क्रैच वास्तव में चीजों का समर्थन करता है धागे और घटनाओं और अधिक पसंद है। तो यह है कि एहसास एक काफी ऊंची छत, यहां तक ​​कि यह भी बहुत है, हालांकि लोगों के लिए मोटे तौर पर सुलभ कौन से पहले क्रमादेशित कभी नहीं किया है। तो वास्तव में, चलो एक नज़र रखना एक साधारण प्रोग्राम या दो पर। हम पहले से ही हम कैसे को देखा खरोंच के साथ नमस्ते कह सकते हैं। मुझे आगे चलते हैं और ऊपर खुला एक छोटे से अधिक दिलचस्प कार्यक्रम मैं अग्रिम में लिखा है कि। और पालतू बिल्ली यह एक कहा जाता है। इन सभी कार्यक्रमों के लिए किया जाएगा CS50 की वेबसाइट पर उपलब्ध है। दरअसल, पहले से ही वहाँ। तो अगर आप डाउनलोड कर सकते हैं उन्हें, और, उनके साथ खेलते हैं और समस्या सेट 0, के साथ जो , को भी पाठ्यक्रम की वेबसाइट पर है आप इन के माध्यम से चलने के लिए प्रोत्साहित कर रहे हैं। और इसके अलावा, हम एक हैं चलने के माध्यम से वीडियो की संख्या ऑनलाइन जिसमें मैं और CS50 की टीम को सही मायने में चलना एक बहुत पर इन उदाहरणों में से प्रत्येक के माध्यम से धीमी गति, एक बहुत तेजी से forwardable, या rewindable गति, इतनी है कि आप चल सकते के रूप में अच्छी तरह से अपने अवकाश पर इन के माध्यम से। यहाँ तो छोड़ दिया पर खरोंच है। यहाँ एक कार्यक्रम सही पर है मैं पहले से ही पूर्व बना दिया है कि। तो मुझे इस पर ज़ूम करते हैं। और अंग्रेजी में कर सकता है किसी को जानते हुए भी क्या आप अभी रूप से पता है, स्क्रैच काम करता है, की तरह कैसे कहते हैं कि करने के लिए एक अंग्रेजी शब्द या वाक्य में, इस कार्यक्रम के जाहिरा तौर पर क्या करता है? हाँ, नारंगी शर्ट में। दर्शकों: [अश्राव्य] डेविड जे मालन: हाँ, यदि आपके कर्सर स्क्रैच पर बिल्ली है, एक meowing ध्वनि खेलते हैं। लेकिन हम जानते हैं कि कैसे व्यक्त नोटिस। जाहिरा तौर पर वहाँ एक वहाँ पाश, हमेशा के लिए। और फिर वहाँ है एक हालत, यदि अभिव्यक्ति। और सामूहिक उन क्या मतलब है? यह इस कार्यक्रम का अर्थ है बस हमेशा चल रहा है, और यह सिर्फ हमेशा इंतज़ार कर रही है और देख और सुन मेरे लिए बिल्ली पर अपने माउस को स्थानांतरित करने के लिए। हर बार क्योंकि मैं के रूप में करना है कि, आप यह करने के लिए जा रहा है, प्रस्ताव है। मुझे कार्यक्रम शुरू करते हैं। कुछ भी नहीं हो रहा है क्या हो रहा है, लेकिन कैसे नोटिस यह एक पीले रंग की लाइन में अब प्रकाश डाला है। वह सिर्फ यह चल रहा है इसका मतलब है। और एक हमेशा के लिए है क्योंकि वहाँ पाश, यह अभी भी चल रहा है। तो मुझे खरोंच पर मेरे कर्सर चलते हैं। [MEOW] [MEOW] और मैं इसे दूर ले जाते हैं, [MEOW] अब यह बंद हो जाता है, लेकिन इस कार्यक्रम की अभी भी दौड़ रहा है। [MEOW] और हां, तो आराध्य। [MEOW] तो चलो ऊपर खुला जाने थोड़ा और अधिक उन्नत पालतू बिल्ली मत बुलाया उदाहरण है। और अब चलो देखते हैं क्या यहाँ होता है। [MEOW] meowing। इसलिए यह एक छोटा है ऑटो पायलट, अगर तुम जाएगा। --पालतू बिल्ली। मुझे आश्चर्य है क्योंकि। [दहाड़] [MEOW] तो कैसे यह काम किया है? खैर, आप कर सकते हैं कारण की तरह इसके माध्यम से intuitively, शायद। लेकिन वास्तविक कोड को देखो। तो फिर, जब हरे रंग का झंडा क्लिक किया जाता है, हमेशा के लिए ऐसा करते हैं। क्या आप हमेशा के लिए क्या करना चाहते हैं? खैर, यदि छू माउस सूचक, तो खेलने जाहिरा तौर पर शेर कहा जाता है कि एक ध्वनि 5, और है कि इस परियोजना के अंदर है ध्वनि म्याऊ खेलते हैं, और उसके बाद तो, दो सेकंड इंतजार यह लगातार meowing नहीं है कि। वास्तव में, आप बहुत जल्दी शुरू कर सकते हैं अपने और अपने कमरे में रहते परेशान करने के लिए। चलो इस ब्लॉक को दूर करते हैं। और खरोंच के बारे में अच्छा है क्या नोटिस। खींचें की बातें सिर्फ तरह और ड्रॉप और गूंथ। तो फिर, यह करने के लिए बढ़ता है क्या आप चाहते हैं भरें। लेकिन मैं तो यह दूर है, और यदि मारो, [कंप्यूटर ब्लिप ध्वनि] --it तरह का में फंसना है ही है, यह सचमुच है, क्योंकि मैं क्या कह रहा हूँ कर रही है। यह हमेशा के लिए कह रही है कि इस ध्वनि खेलते हैं, लेकिन है मैं इसे खत्म करने के लिए एक मौका नहीं दे रहा हूँ। और इतना है कि एक बग होगा। हम था और यही कारण है यहां अब में इस बात को। तो चलो वास्तव में scratch-- से शुरू करते हैं एक तरह से श्लेष थोड़ा intended-- जिसमें हम अब बिल्ली को स्थानांतरित किया है। तो मैं उड़ पर यह करने के लिए जा रहा हूँ। मैं तो बस, यहाँ ज़ूम करने के लिए जा रहा हूँ मुझे घटनाक्रम पर आरंभ करने के लिए। और हरे रंग का झंडा क्लिक किया। और अन्य तरीकों से देखते है लिपियों शुरू करने के लिए। हम यहाँ इसे सरल रखने के लिए जा रहे हैं। और अब मैं जा रहा हूँ आगे और नियंत्रण में चले जाते हैं। और फिर, आप जहां भूल जाते हैं बातें, बस, चारों ओर क्लिक कर रहे हैं और अंत में आप फिर से उन्हें लगता है। इसलिए मैं हमेशा के लिए क्या करना चाहते हैं? मैं इस प्रस्ताव ब्लॉक का उपयोग करना चाहते हैं मुझे पता है कि 10 कदम से कदम है, मौजूद है। तो चलो देखते हैं क्या होता यहाँ मैं इस खेल को खेलते हैं। शुक्र है यह बहुत दूर नहीं जाना है। मैं अभी भी एक तरह से उसे हड़पने कर सकते हैं पूंछ से और उसे वापस खींच। लेकिन कार्यक्रम अभी भी चल रहा है, तो वह मुझे लड़ की तरह है। मैं लेकिन अगर यह एक तरह से अच्छा होगा सशर्त कोड में यह तय कर लो। इस not-- है क्योंकि वास्तव में यह सच है किसी भी उम्र के किसी के लिए नहीं है और एक मजेदार खेल है। तो चलो द्वारा इसे ठीक करने की कोशिश करते हैं की स्थिति में किसी तरह का कर रही है। तो मैं नीचे जाने के लिए जा रहा हूँ नियंत्रण है, और फिर यदि। मुझे यह विचार पसंद है। तो 10 कदम जाने के बाद, if-- मैं कहाँ हूँ मुझे समझ चलो। मैं सेंसिंग के नीचे जाने के लिए जा रहा हूँ और फिर यह है कि मैं यहां जा सकते हैं लग रहा है। आकार मैचों के लिए पंक्ति। आकार नहीं करता है, लेकिन यह है भरने के लिए विकसित करने के लिए जा रहा है। और अब यह एक छोटे से मेनू है। और अब माउस मैं नहीं pointer-- माउस चाहते हैं, मैं किनारे चाहते हैं। तो स्क्रैच काफी चतुर को पता है जब एक प्रेत बढ़त को छू रहा है। क्या मैं उसे वास्तव में क्या करना चाहते हैं? मुझे आगे जाना है और गति को बदल दें। आपको पता है कि? मैं उसे चारों ओर मोड़ करने जा रहा हूँ। 15 डिग्री पर तो नहीं है वास्तव में मुझे मदद करने के लिए जा रहा है। मैं उसे चारों ओर चालू करना चाहते हैं और दूसरे रास्ते पर चलना। तो चलो देखते हैं क्या होता मैं मारा तो यहां, अब खेलते हैं। ठीक है, बेवकूफ की तरह लग रही है, लेकिन यह मैंने कहा कि क्या वास्तव में क्या कर रहा है। और यह पूरे प्रेत घूर्णन है। मैं इसे ठीक कर सकते हैं अब यह पता चला है। और मुझे पता नहीं था पहली बार में यह तय करने के लिए। मैं एक तरह से चारों ओर futz के लिए किया था और यह करने के लिए सबसे अच्छा तरीका है देखते हैं। लेकिन मुझे लगता है की, गति देखते हैं है-- जाना है। ओह, मैं इस पाया। असल में, रोटेशन शैली सेट। दाएं, बाएं, या नहीं सभी चारों ओर घुमाने के लिए, या। और यह है कि मैं क्या चाहता है पता चला है। और मैं इस डाल करने के लिए नहीं है, जा रहा हूँ मेरी पाश, मैं स्थापित करने की आवश्यकता नहीं है क्योंकि रोटेशन शैली कई बार। मैं के ऊपर से ही इसे लगाने के लिए जा रहा हूँ यह एक बार सेट हो जाता है तो यह है कि इस कार्यक्रम, और फिर याद करते हैं। और अब मैं फिर से इस कोशिश करने के लिए जा रहा हूँ। मुझे कार्यक्रम बंद करो। और अब है कि कि बग तय की। इसलिए मैं iteratively इस पर सुधार कर रहा हूँ। कार्यक्रम के लिए एक हो रही है और अधिक जटिल और बड़ा थोड़ा, लेकिन मुझे लगता है कि बच्चे इतनी बात करने के कदम उठा रहा हूँ और इस समस्या से बाहर छोटे काटने यह बेहतर और बेहतर हो। लेकिन यह भी, लंगड़ा की तरह है। आपको पता है कि? एक बहुत अच्छा के साथ किसी से पूछना चाहेंगे, भयंकर आवाज आने के लिए पसंद है? एक आवाज के साथ किसी। हाँ, उह। आ जाओ। हरे रंग की शर्ट में। तो यह कुछ अन्य मजेदार नहीं है, पता चला है बातें, सौंदर्यशास्त्र और एक जैसे लगता है। यहाँ म्याऊ है। मैं ध्वनि टैब पर क्लिक करें। [MEOW] म्याऊ नहीं है। [म्यांऊ म्यांऊ] [MEOW] --actually रिकॉर्ड कुछ यहां हमारी खुद की। तो चलो ठीक है कि ऐसा ही करे। इसके बजाय इस बिल्ली ध्वनि का उपयोग कर के, चलो यहां से आगे जाना है, और तुम्हारा नाम क्या है? निक, आपसे मिलकर अच्छा लगा। वह दाऊद के। एक पल में तो, मैं जा रहा हूँ रिकॉर्ड बटन हिट करने के लिए। और अगर तुम सिर्फ कर सकते हैं लैपटॉप में चिल्लाना, "आहा," आप के रूप में यद्यपि बस, दीवार में चला गया लगता है कि बहुत सराहना की जाएगी। 1, 2। निक: आहा! डेविड जे मालन: बहुत बढ़िया। और अब यहाँ एक छोटे से संपादन कर सकते हैं। शांत भागों से छुटकारा पाने के लिए जा रहे हैं। और मुझे लगता है कि अच्छा लगता है। बहुत बहुत धन्यवाद। निक: खुशी। डेविड जे मालन: मैं है बस, "आहा" यह नाम लेकिन अब मैं जा रहा हूँ मेरी स्क्रिप्ट के लिए वापस जाओ। और नोटिस ध्वनि यहां वास्तव में नहीं है। और मैं आगे जाने के लिए जा रहा हूँ और ध्वनि आहा खेलते हैं, और मुझे लगता है कि अगर ऐसा करने के लिए जा रहा हूँ यह केवल किनारों को छू रहा है। और फिर मैं जा रहा हूँ यह चारों ओर मोड़ दिया है। तो चलो यहाँ देखते हैं क्या होता। की पूर्ण स्क्रीन चलते हैं। [वीडियो प्लेबैक] -Ouch! आउच! आउच! आउच! आउच! आउच! आउच! आउच! [अंत प्लेबैक] डेविड जे मालन: तो आप का एहसास कि हम थोड़ा भाग्यशाली हो रही है। मैं उसे ले जाने के लिए जा रहा हूँ एक समय में 100 कदम की तरह। अब जो का असर हो रहा है तो [कंप्यूटर गड़बड़ ध्वनि] be-- को कारण के भीतर। तो एक अवसर है कि परिष्कृत करने के लिए आगे हम वास्तव में चाहते हैं। तो अब एक और अवधारणा परिचय। मुझे बुलाया एक में जाने के लिए भेड़ और उपयोग कुछ गिनती एक चर बुलाया। यह एक प्यारा सा भेड़ है, और मैं तो बात करने के लिए अपनी पोशाक बदल दिया है। तो डिफ़ॉल्ट है, भले ही एक बिल्ली, आप आकर्षित कर सकते हैं, अपलोड कर सकते हैं आप में से किसी भी नंबर पर कर सकते हैं अपने प्रेत पर अक्षर। यहां बताया गया है कि एक कार्यक्रम है अंग्रेजी में क्या करने के लिए जा रहे हैं? अब आप जानते हैं बस क्या पर फिर से आधार पर। इस कार्यक्रम में क्या कर रहा है? हाँ, यह गिनती करने के लिए जा रहा है। एक बार में एक ही नंबर है। हम जाहिरा तौर पर है इस सेट काउंटर है। मुझे लगता है कि क्या है पता नहीं है लेकिन हो सकता है यह एक चर है। यह सिर्फ एक कंटेनर, एक्स या वाई है। लेकिन शब्द काउंटर अधिक है गणितज्ञ के एक्स या वाई से वर्णनात्मक। इसलिए हम चीजों के लिए अंग्रेजी शब्दों का प्रयोग कर सकते हैं। हमेशा के लिए, बस यह कर रखने का मतलब है। काउंटर कहो। अब इस कहाँ से आया? खैर, यह पता चला है कि काउंटर एक चर रहा है। तो यह सिर्फ एक पहेली है टुकड़ा मैं अग्रिम में बनाया। और जब ऐसा होता है, भले ही यहां एक ही आकार होने के लिए नहीं, आम तौर पर आप कह सकते हैं कि यहाँ नमस्ते की तरह कुछ। तुम भी एक चर खींच सकते हैं तो यह है कि यही कारण है कि ने कहा कि क्या हो रहा है। तो मुझे लगता है कि मैं एक पल के लिए इंतजार एक ने काउंटर बदलने के लिए, एक जोड़कर इसे बढ़ाने। शुद्ध प्रभाव इतना है कि इस आराध्य गिनती भेड़। हालांकि वह खुद को गिन रहा है। अब यह बहुत जल्दी है बोरिंग पाने के लिए जा वह जा रहा है क्योंकि वास्तव में हमेशा के लिए ऐसा करते हैं, लेकिन लगता है कि वास्तव में क्या है कार्यक्रम के डिजाइन का प्रावधान है। अब एक और उदाहरण की कोशिश कर देता है कि एक चर का लाभ उठाता है। कि, हाय हाय हाय नामक यह एक जल्दी गुस्सा आ प्राप्त करता है। अब यह एक दो लिपियों है। और तो फिर, हम बच्चे कदम उठा रहे हैं। हम सुपर कुछ के साथ शुरू कर दिया छोटे, यह जोड़ा, यह जोड़ा। अब मैं कुछ करना चाहते हैं और भी अधिक गतिशील, इसलिए मुझे लगता है के लिए सुन होना चाहता हूँ एक समय में दो अलग अलग चीजें हैं। छोड़ दिया, पर जब तो हरे रंग का झंडा क्लिक किया जाता है, मैं लिखा था कि मैं एक चर सेट अग्रिम में मौन कहा जाता है। और मैं मनमाने ढंग से 0 करने के लिए सेट। तो स्क्रैच सच नहीं है और झूठी है, लेकिन यह 0 और 1 के पास है। इसलिए मुझे लगता है कि एक ही विचार अनुमानित कर सकते हैं। और फिर हमेशा के लिए, अंतरिक्ष बार है, तो दबाया, तो चर 0 करने के लिए निर्धारित किया है। या खेद है। अंतरिक्ष दबाया जाता है, और मौन हैं, चर, 0 है, तो 1 को मौन सेट, बाकी 0 करने के लिए मौन निर्धारित किया है। यह हम कर रहे हैं प्रकार की तरह लगता है बस कर रही है और काम नाश। लेकिन प्रभाव क्या है? हर बार जब मैं अंतरिक्ष बार मारा क्या मेरे चर के लिए होता है तार्किक रूप से, मौन कहा जाता है? क्रमबद्ध के रूप से फ़्लिप हो जाता है। यह 0-1 परिवर्तन, या 1-0। तो यह कुछ ही ब्लॉक में ले लिया कि एक्सप्रेस, लेकिन सभी के लिए मैं की स्थिति को टॉगल कर रहा हूँ 0 या 1, या 0 या 1 के लिए इस चर हर बार जब मैं अंतरिक्ष बार मारा। अब यहाँ पर, यह क्या कर रहा है? हमेशा के लिए, मौन यदि 0 है, मौन है, इसलिए यदि गलत है। यह मौन नहीं है तो, अगर है वहाँ अर्थ विज्ञान, ध्वनि समुद्र शेर खेलने और दो के लिए हाय हाय हाय लगता है सेकंड, दो सेकंड प्रतीक्षा करें। तो अब ये नोटिस लिपियों को प्रभावी ढंग से कर रहे हैं समानांतर में चलाने के लिए जा एक कर सकें एक कार्रवाई के लिए सुन हो, अन्य कि कार्रवाई के आधार पर एक निर्णय करने के लिए। और यह हमेशा के लिए कर सकते हैं। [समुद्र शेर भौंकने] [समुद्र शेर भौंकने] यह हमेशा के लिए यह करने के लिए जा रहा है और मैं अभी किया है के रूप में [समुद्र शेर भौंकने]। और अब यह अभी भी चल रहा है लेकिन मैं इस खेल को "मौन" है। [समुद्र शेर भौंकने] और है कि यह सब पुरुष भी अब नहीं करता है। यहाँ एक और उदाहरण खोलें। मुझे घटनाक्रम में चलते हैं, और अब इस आराध्य भी। लेकिन यह दो स्प्राइट है नोटिस। साथ तो न सिर्फ दो लिपियों एक प्रेत, लेकिन दो स्प्राइट। और मैं मैं के रूप में नीले आदमी पर क्लिक करते हैं पहले से ही है, मैं एक कार्यक्रम के रूप में वह देखना यहां तक ​​कि सचमुच सिर्फ कहते हैं यही नहीं, मैं एक घटना प्राप्त करते हैं, दो सेकंड के लिए "पोलो" कहते हैं। क्या तुमने कभी खेला है तो अगर एक पूल, खेल मार्को पोलो, नारंगी पुरुष स्क्रिप्ट है, तो किसी भी संकेत, जाहिरा तौर पर हर बार जब मैं अंतरिक्ष बार मारा क्या करने जा नारंगी पुरुष क्या है? उन्होंने कहा कि कहने के लिए जा रहा है "मार्को।" और फिर यह एक नया खंड है। हम इस से पहले नहीं देखा है लेकिन एक घटना का प्रसारण किया। और मैं यह कह सकते हैं हम चाहते हैं कि घटना में कुछ भी। हम यह करने के लिए वापस आ गया हूँ शायद लंबे समय से पहले। लेकिन एक घटना का प्रसारण एक प्रेत के लिए एक रास्ता है द्वारा दूसरे से बात करने के लिए अनिवार्य रूप से यह संदेश गुजर रहा है। यह आप देख संदेश नहीं है। यह दृश्य कुछ नहीं है। यह एक कंप्यूटर संदेश की तरह है दूसरे आदमी के लिए सुन रहा है। दरअसल, नीले आदमी, याद है क्योंकि हरे रंग का झंडा जब क्लिक जरूरत नहीं है। मैं एक घटना प्राप्त करते हैं तो उन्होंने कहा कि इसके बजाय, है। वह कक्षा में इस नोट को सौंप दिया जाता है, तो बात है, उन्होंने कहा, "पोलो।" कहना चाहिए और तो शुद्ध प्रभाव है कि जब मैं हरे रंग का झंडा मारा, कुछ नहीं होता। मैं अंतरिक्ष बार मारा लेकिन, जब वे कहते हैं "मार्को," उन्होंने साथ प्रतिक्रिया "पोलो।" लेकिन केवल प्रेत मैं कर रहा हूँ साथ बातचीत के दौरान नारंगी से एक है। तो यह की तरह का एक तरीका है स्प्राइट के बीच संदेश गुजर और उन्हें संवाद होने एक दूसरे के साथ। अब देखते हैं कि पिछले एक को देखो यहाँ बुलाया धागे। और यह खेल से इस पर ध्यान दिया। तो इन दो स्प्राइट हैं। पक्षी तरह के चारों ओर उड़ रही है। वह उछल रहा है। कोई 'आहा, "लेकिन एक ही विचार नहीं है। लेकिन बिल्ली बहुत चालाक लगता है। बिल्ली जाहिरा तौर पर क्या कर रहा है? और इसके लिए प्रतीक्षा करें। बिल्ली जाहिरा तौर पर क्या कर रहा है? यह सिर्फ उछल नहीं है। वह पक्षी पीछा कर रहा है। और तो जाहिर है, वहाँ एक रास्ता है ब्लॉक के एक संयोजन के साथ here-- और का असली तेजी से बिल्ली को देखो। पक्षी को छू हमेशा के लिए यदि है, तो खेलने ध्वनि यह है कि जो कुछ भी शेर 4,। हम एक बार यह सुना। अन्यथा, की ओर इंगित पक्षी, और एक कदम चलते हैं। अब यह एक तथ्य है कि कदम पक्षी देता है एक लाभ का एक सा शुरू में, लेकिन हम बजाय अगर इसलिए, उदाहरण के लिए, यह 10 बनाने पाश की हर चलना है कि वह समय के 10 चरणों में घूम रहा है। इसलिए अधिक स्थान। का होता है तो क्या देखते हैं। [शेर दहाड़] बिल्कुल नहीं है कि ज्यादा बेहतर है। तो अब हम सुधार करने के लिए कोशिश करते हैं iteratively ये एक छोटे से पर, और कहा कि वापस आने के लिए एक समारोह की धारणा। मौलिक की और वास्तव में एक श्रेणी के डिजाइन की takeaways। सिर्फ काम प्रोग्राम है कि लेखन नहीं और सही कर रहे हैं, लेकिन अच्छी तरह से कर रहे हैं कि बनाया गया है। और डिजाइन, बहुत अधिक व्यक्तिपरक है और आप समय के साथ यह कम से बेहतर मिलेगा। लेकिन ओर कुछ बच्चे कदम उठाए जाने काम करता है कि एक कार्यक्रम के साथ शुरू बिल्कुल, लेकिन यह बहुत अच्छा नहीं है। यह बहुत अच्छी तरह से नहीं लिखा है। यहाँ तो यह है कि एक कार्यक्रम है। खांसी, खांसी, सर्दी, खांसी। क्या प्रोग्राम की तरह दिखता है? मेरे लिए सही लगता है। यह एक के लिए सोफे कह रहा है दूसरा, तो यह इंतजार कर रहा है। तो यह तो यह इंतजार कर रहा है, फिर यह कहते हैं। तो यह तो यह इंतजार कर रहा है, फिर यह कहते हैं। और फिर कार्यक्रम उलझाव कोई पाश है क्योंकि वहाँ, समाप्त होता है। लेकिन क्यों यह एक बुरी तरह से लिखा कार्यक्रम है? यहां तक ​​कि इससे पहले कि आप प्रोग्राम किया कभी नहीं किया है तो क्या होगा? की तरह, क्या मालिश शायद यहाँ गलत तरीका है,? हाँ? दर्शकों: [अश्राव्य] डेविड जे मालन: बिल्कुल। आप दोहरा रहे हैं खुद को बार-बार। और सचमुच, मैं कॉपी और चिपकाया बार-बार उन ब्लॉकों में से दो। और कहा कि विवेक के ठीक प्रकार है आप बना दिया जाना चाहिए कि जाँच करें। एक मिनट रुकिए। मैं वास्तव में इस कर दिया जाना चाहिए? तो क्या यह क्या है है स्पष्ट समाधान शायद? पाश किसी तरह का है। और मैं काफी नहीं याद है क्या पहेली टुकड़ा है, लेकिन मैं पर नजर डालें तो यहां अगले चलना, वास्तव में, वहाँ नहीं है बस हमेशा के लिए लूप, समय में से कुछ नंबर दोहराने नहीं है। और इसलिए मैं तीन निर्दिष्ट किया है। और अब कितना सख्त नोटिस, कैसे बहुत अधिक संक्षिप्त इस कार्यक्रम है। और एक अर्थ में, कैसे बहुत अधिक पोषणीय। मैं शब्द बदलना चाहते हैं खांसी से कुछ और करने के लिए, जैसे Achoo, जैसे वह छींकने है। तो फिर मैं एक में इसे बदल जगह नहीं है, और तीन। तो यह पहले से ही की तरह लगता है थोड़ा बेहतर डिजाइन। मुझे बजाय खुले खांसी 2, हमारे तीसरे उदाहरण है। एक कंप्यूटर वैज्ञानिक के रूप में सूचना है, मैं आम तौर पर, 0 पर गिनती शुरू। अब यह एक छोटी सी डरावना पर लग रहा है पहला, लेकिन प्रभाव ही है। खांसी, खांसी, सर्दी, खांसी। लेकिन क्या मौलिक हो रहा है कार्यक्रम के शीर्ष भाग में नया क्या है? मैं कहना है हटा दिया है। मैं इंतजार हटा दिया है। और मैं बदले में खामियों को दूर किया क्या है? एक समारोह। एक खांसी ब्लॉक। मैं स्पष्ट रूप से, मैं एक तरह लग रहे हैं, इसका मतलब यह एक बेवकूफ का मैं अभी नहीं किया है, तो ब्लॉक के साथ शुरू कि जाहिरा तौर पर कहा जाता है कि मैं उसे करना चाहते हैं कि सभी "अगर खांसी,"। लेकिन यह है कि खरोंच में मौजूद नहीं है। बल्कि मैं में एक के पास गया पैलेट, यहां अधिक ब्लॉक बुलाया और मैं इस बड़े बैंगनी बात खींचें मुझे यहाँ एक समारोह को परिभाषित करने देता है। यह अनिवार्य रूप से मुझे देता है मेरी खुद की पहेली बना कुछ भी मैं कहा जा सकता है कि टुकड़ा , कि मैं चाहता हूँ कि कुछ भी कर सकते हैं चाहता हूँ, लेकिन यह एक नाम देता है। यह मेरे लिए एक नया, बैंगनी पहेली टुकड़ा देता है लगता है कि अब मुझे क्या करना है यह बताने के लिए जो कुछ भी करता है। यहाँ तो यह बैंगनी टुकड़ा यहाँ यह एक से मेल खाती है। और यह क्या करता है? यह एक के लिए खांसी का कहना है दूसरा, और फिर इसे इंतजार कर रहा है। और अब मैं की तरह बना लिया है अपने स्वयं के कस्टम पहेली टुकड़ा, यह बर्ताव करता है तो यह है कि बिल्कुल उसी तरह है कि। इसलिए मैं यह कर रख सकते हैं। और वास्तव में, अधिक होने जा रहा है और मॉड्यूलर के लिए और अधिक अवसर, और लेयरिंग के लिए, जटिलता एक दूसरे के शीर्ष पर। लेकिन इस मूल विचार, वास्तव में इस समस्या में 0 कहा। क्या आप करने जा रहे हैं ऐसा करने के लिए चुनौती दी जा है स्क्रैच डाउनलोड, या बस इसे उपयोग करने के लिए वेब पर, और बस के साथ मजाक किया है। हम आप का एक सेट दे दूँगा आवश्यकताओं, एक ध्वनि होने, और पहेली टुकड़े में से कुछ नंबर। लेकिन अगर आप वास्तव में इस करूँगा। और क्या आप करने जा रहे हैं कि पता चलेगा शुरू में कुछ छोटे-छोटे कदम उठाना चाहते हैं, अपने कार्यक्रम हो जाता है जब तक अधिक से अधिक जटिल है। लेकिन विचार है यह मैं यह कर सकता है सबसे अच्छा तरीका है? मैं इस वृत्ति से बच सकते हैं शायद, कॉपी और पेस्ट करने के लिए? लेकिन समस्या यह सेट करने से पहले 0, और हम स्थगित करने से पहले, हम एक को ले लगा अधिक स्वयंसेवक हम कर सकते हैं, तो एक अंतिम कार्यक्रम के लिए कि शायद सबसे है फिटिंग सब पर है, आज के स्थल दी। नीचे आए। हाँ। हाँ। आपका नाम क्या है? उह ओह। ठीक है। दोनों नीचे आते हैं। और मुझे लगता है यह किसी भी तरह के साथ सौदा होगा है कि अगले दस सेकंड के भीतर। तो नीचे आ जाओ। नीचे आए। मुझे यहाँ तक पर आते हैं। चलो। ठीक है। चलो यहाँ देखें। तो असली तेजी से यहां नोटिस, आप ऊपर पर आने के लिए चाहते हैं। हम इस के दो दौर करूँगा। और आपका नाम क्या है? सबरीना: सबरीना। डेविड जे मालन: सबरीना और? यिंग जी: यिंग जी। डेविड जे मालन: यिंग जी। दोनों आपसे मिलकर अच्छा लगा। डेविड। इसलिए हमारे अंतिम उदाहरण यहाँ है आइवी की सबसे कठिन खेल कहा जाता है। ऐसा नहीं है और यही कारण है कि हम तुम्हें क्या है स्तर 1, और आप स्तर 2 है। और हम कितनी दूर देखेंगे से परे है कि हम वास्तव में चले जाते हैं। एक छात्र ने लिखा मेरे द्वारा remixed पिछले साल, इस जाना होगा कि इतने अधिक अच्छी तरह से न्यू हेवन में। और मैं तुम्हें करने के लिए जा रहा है कि एक खेल के लिए दे ऊपर और नीचे तीर हिल शामिल है, और फिनिश लाइन को येल हो रही है। ये रहा। [वीडियो प्लेबैक] [संगीत - एनएफएल पर फॉक्स थीम गीत] [संगीत - एम सी हथौड़ा, "यू छू नहीं सकते  इस"] -U इस छू नहीं सकते। यू इस छू नहीं सकते। इस छू नहीं सकते। मेरे, मेरे, मेरे, मेरे संगीत इतना मुझे मारता है मुश्किल है, मुझे ओह, मेरे प्रभु का कहना है, बनाता है। एक के साथ मुझे आशीर्वाद के लिए धन्यवाद कविता और दो प्रचार फुट करने के लिए मन। आप नीचे रहे हैं जब आप जानते हैं कि अच्छा है। Oaktown से एक सुपर डोप Homeboy। और मैं इस तरह के और इस रूप में जाना जाता रहा हूँ एक हरा उह, तुम छू नहीं सकते। मैं यू इस छू नहीं सकते आप Homeboy बताया। हम रह रहे हैं कैसे हाँ, यह है और आप यू इस छू नहीं सकते पता है। आदमी, मेरी आँखों में देखो। यू इस छू नहीं सकते। यो, मुझे कायरता गीत फोड़ दें। यू इस छू नहीं सकते। नए नए किक और पैंट। आप इसे इस तरह से मिला है और क्या आप नृत्य करना चाहते पता है। तो अपनी सीट से बाहर ले जाने के लिए और मिल एक महिला के लिए उड़ान भरने और इस हरा पकड़ने के लिए। यह एक छोटे से पंप पर पकड़ रोलिंग है जबकि बिट उन पर क्या हो रहा है पता है और। उस तरह। उस तरह। एक मिशन पर शीत इसलिए पीठ पर खींच। उन्हें आप बहुत ज्यादा कर रहे हैं कि पता करते हैं और इस उह तुम्हें छू नहीं सकते की एक चाल है। यो, मैं यू इस छू नहीं सकते कहा था। क्यों तुम आदमी वहाँ खड़े? यू इस छू नहीं सकते। यो, एक प्रकार की मछली घंटी स्कूल के दशक में ध्वनि। यू इस छू नहीं सकते। मुझे एक गाना दे दो, एक लय उन्हें बनाने कि अब मैं उन्हें दे रहा हूँ क्या पसीना। आप हैमर के बारे में बात करते हैं, जब वे जानते हैं आप बहुप्रचारित है कि एक शो के बारे में बात करते हैं। और तंग गायकों हैं इसलिए पसीना आ रहा है उन्हें एक mic से गुजरती हैं। या एक टेप में जानने के लिए क्या यह अब लेने के लिए जा रहा है वह चार्ट को जलाने के लिए जा रहा है। कानूनी काम या तो मुश्किल या आप के रूप में अच्छी तरह से बंद हो सकता है। क्योंकि तुम्हें पता है यू इस छू नहीं सकते। यू इस छू नहीं सकते। तोड़ दो। रुकें। हथौड़ा का समय। एक स्पिन में प्रवाह के साथ जाओ आप इस के लिए नहीं ले जा सकता है, तो तो आप शायद मर चुके हैं। इतने में अपने हाथ की लहर हवा [सुनाई] इस के लिए एक विजेता नृत्य के लिए यह है इस और आप पतले पाने के लिए जा रहे हैं। बस के लिए अपनी दुम स्लाइड ले जाएँ एक मिनट के सभी टक्कर करते हैं। हाँ। यू इस छू नहीं सकते। यू इस छू नहीं सकते। बेहतर होगा कि तुम बहुप्रचारित मिल लड़का यू इस छू नहीं सकते। में घंटी स्कूल की पीठ की अंगूठी। तोड़ दो। रुकें। हथौड़ा का समय डेविड जे मालन: यही कारण है कि CS50 के लिए यह बात है! हमारे साथ जुड़ने के लिए बहुत बहुत धन्यवाद! बाहर मिलते हैं। [अंत प्लेबैक] [वीडियो प्लेबैक] [संगीत - "Seinfeld" थीम गीत] हे डेविड। हे, डेविड। ये कैसा चल रहा है? -अच्छा नौकरी, आज। -तो आप के बारे में क्या सोचा है आप बाहर मजाक के लिए क्या करने जा रहे हैं? -नहीं, मैं कुछ भी नहीं मिला है। If-- -क्या क्या होगा अगर इस बाहर मजाक है? की तरह, गाड़ियां unpacking? -अहां। आप इसके बारे में कुछ नहीं है, पता है। नहीं, नहीं, नहीं, कहानी की तरह -तो संघर्ष, कोई संकल्प। मैं नहीं समझा। तब के बारे में यह क्या है? कुछ भी नहीं। हम मजाक के बारे में है बाहर है -तो कुछ भी नहीं है, और हम कोई अभिनेता है। इस में कौन होने जा रहा है? -नहीं नहीं नहीं। मेरा मतलब है, मैं इसे में हो जाएगा। इसमें शामिल होना -You'll? हाँ! लोगों को हमेशा के लिए कह रहे हैं मुझे लगता है मैं एक चरित्र कर रहा हूँ। -अच्छी, मेरा मतलब है, यह सच है। लेकिन और कौन उस में होने जा रहा है? यह सिर्फ तुम नहीं हो सकता। -आप में यह हो जाएगा, गेविन, दान, दान, कोल्टन, Z'Myla, Alysse, डग, डेविड, सब लोग। -तो यह कुछ भी नहीं के बारे में है, और हर कोई इसे में है? -बिल्कुल कुछ भी नहीं। -यह मज़ाकीय है।