[عزف الموسيقى] DAVID مالان: حسنا هذا هو CS50 وهذا هو نهاية أسبوع واحد. لذلك أود أن أعرض بلدي السابق المنصوح، اندل داف، الذي لا يجعل فون 5 تقف، فضلا عن هذا منبر، كما انه يجعل السيارات. ANSEL DUFF: كيف تسير الأمور، الجميع؟ أريد فقط أن أقول لكم قليلا قليلا عن الفورمولا SAE، منها I أنا القبطان. انها فريق معهد ماساتشوستس للتكنولوجيا. أريد فقط أن أقول لكم الرجال قليلا عن ذلك ونأمل أن تولد بعض الاهتمام. لذلك اسمحوا لي فقط تشغيل من خلال أشياء الزوجين عن فريقنا. لذلك نحن تماما يديرها الطلاب، حيث كل من تصميم أعضاء، محاكاة، الاختبار، والشركة المصنعة نظام فرعي للسيارة. لدينا متجر آلة الخاصة والكراجات، وN52-- أو آسف، N51-- وهو نفس المبنى ومتحف العلوم MIT. ونحن الشعب أن قيادة السيارة. هناك مسابقة وطنية في بداية فصل الصيف، ثم هناك أصغر ركلات مسابقات على مدار العام. ثم نفعل تدريب السائقين أيام للحصول على أعضاء جدد اطلاع. أيام بناء لدينا هي على السبت 11:00 حتي 20:00. الغداء والعشاء ورعاية من، من لبيرتوتشي وBeantown على التوالي. لدينا اجتماع أسبوعي و الندوة، التي هي بالطبع للحصول على الائتمان. الذي هو جديد اعتبارا من هذا الفصل الدراسي، و كما سيكون للفصل الدراسي المقبل، حتى تتمكن من عبور-REG لذلك. ومن ثم لدينا تصميم، متجر، وCAD خلال أيام الأسبوع، في حين سوف أعضاء مستقلة CAD أجزاء، ترتيب الأوراق المالية وهلم جرا. وذلك لالكهربائية الهندسة في الفريق لدينا جذبي لدينا، نظام الجهد العالي، الذي يقام في اسمية 300 فولت، والذي يتضمن محركات، وحدات تحكم المحرك، وحزم البطارية. ثم لدينا أدنى نظام الجهد، الذي يمتد في 12 فولت، والذي يتضمن الضوابط، يمكن الليمفاوية، الدماغ مربع، و لوحة القيادة. بقدر CS يذهب، ونحن نفعل لدينا صيانة الموقع أننا بحاجة إلى القيام به للأحداث، وعضوية التغييرات، صور جديدة، ومواد العلاقات العامة. ومن ثم لدينا التعليمات البرمجية التي تسيطر على سيارة لدينا التحكم في الجر، وإطلاق السيطرة والتحكم في اندفاعة، وعزم دوران vectoring، وأنظمة الكبح على التجدد، والتي تشغيل عادة في MATLAB، السيميولينك، وابفيف. اقول لكم قليلا عن السيارة. لذلك فمن حوالي 500 جنيه. انها قواعد تقتصر على 85 كيلووات. لديها 2 EMRAX 207 المحركات في مرة أخرى، واحد لكل العجلات الخلفية. لديها حزم البطارية مبنية خصيصا من خلايا A123 الحقيبة المنشورية، بلغ مجموعها 300 فولت و 5.6 كيلو واط ساعة. وانها محرك المباشر مع نسبة 2،64 حتي 1 محرك الأقراص. وهنا بعض الصور ونحن استغرق منه في المنافسة. وهنا المخروط الظهر والأنف و وهنا هي المحركات، تلك الأقراص سوداء كبيرة تحت آخرون رجل اليد. وهنا الشريحة التي سحبت من مخطط منافسينا. وهذا هو مجرد مقارنة سيارتنا ل زوجين من السيارات المتاحة تجاريا، مثل KTM XBOW ارييل ذرة، وCaterha M 7-280. إذا كنت على دراية الأسعار، والسلطة سحب الوزن، دولار لكل حصان، دولار في عزم الدوران، وسيارتنا ضربات لهم جميعا الخروج من الماء. إذا كان لديك أي أسئلة، تدوين عنوان البريد الإلكتروني هذا. تبادل لاطلاق النار لنا رسالة بالبريد الالكتروني في fsae@mit.edu. نحن سعداء للحديث عن أي شيء تريد. طلاب جامعة هارفارد هي نوع الأقلية على الفريق. إذا كان لديك أي أسئلة حول يرجى أن تفعل اطلاق النار لنا رسالة بالبريد الالكتروني، سعيدة للحديث، وأنا ذاهب للعودة الى ديفيد. شكرا. وأنا أقدر ذلك، والرجال. [تصفيق] قضى أنسل الصيف: DAVID مالان العمل معنا هنا في الحرم الجامعي في CS50 هذا الصيف. وبالإضافة إلى العمل على أشياء مثل المصابيح الثنائية، انه فعلا فتحت حقا لدينا eyes-- والألغام في particular-- لماذا حقا تقاطع ليس من الأجهزة والبرمجيات يمكن أن يكون. في الواقع الكثير من الأشياء التي فقط جال كنت في نهاية المطاف من خلال أنشئت لأول مرة في مجال البرمجيات، ثم ملفقة النهاية في العالم الحقيقي في الأجهزة. حتى إذا كنت ترغب في استكشاف ذلك التقاطع، ربما تناول تلك المجموعة. الآن وفي الوقت نفسه، أولئك منكم الذين هم عشاق التكنولوجيا، ومنتجات أبل في خاص نعرف أن هناك كانت بضع إعلانات يوم أمس. ولكننا نظن أننا سوف تظهر أنت واحد التي خرجت بضعة أيام قبل أن قد لا يكون رأيت. يورغن EGHAMMER: أنت تعرف، مرة واحدة في شيء حظة يأتي ذلك على طول يغير الطريقة التي نعيش بها. جهاز بسيط جدا وبديهية استخدامه يشعر مألوفة تقريبا. إدخال 2015 كتالوج ايكيا. انها ليست الكتاب الرقمي أو الكتاب الإلكتروني، انها كتاب الكتاب. أول شيء هو أن نلاحظ أي الكابلات، ولا حتى كابل الطاقة. كتالوج ايكيا 2015 تأتي مشحونة بالكامل، وعمر البطارية هو الأبدية. واجهة 7.5 من 8 بوصات، ولكن يمكن توسيع إلى 15 بنسبة 8 بوصة. ويستند التنقل على اتصال عن طريق اللمس التكنولوجيا التي يمكنك أن تشعر فعلا. يأتي محتوى مثبتة مسبقا عبر 328 صفحة عالية الوضوح من الأفكار الملهمة تأثيث المنزل. لبدء التصفح، ببساطة لمس واسحب. اليمين إلى اليسار للتحرك إلى الأمام، من اليسار إلى اليمين للانتقال إلى الوراء. لاحظ شيئا آخر؟ هذا صحيح. لا يتخلف. كل صفحة اضحة وضوح الشمس الأحمال على الفور، بغض النظر عن مدى سرعة التمرير. إذا كنت ترغب في الحصول على لمحة سريعة، فقط لأنه عقد في راحة يدك، والخاص بك فقط باستخدام الإبهام، سرعة تصفح المحتوى. إذا كنت تجد شيئا تريد حفظ في وقت لاحق، يمكنك ببساطة المرجعية. وحتى إذا قمت بإغلاق التطبيق، يمكنك بسهولة العثور على المرجعية مرة أخرى. مدهش. [ضحك] [تصفيق] بحيث يقودنا إلى نهاية أسبوع واحد. بعض الإعلانات الآن. باجتزاء حتى الآن في التقدم. يذهب إلى هذا URL هنا في وقت ما بين الآن والجمعة ظهرا لتحديد ما إذا كنت فعلا من بين هؤلاء أقل راحة، وأكثر مريحة، أو في مكان ما بينهما. هذا هو عادة واحدة من تلك الأشياء التي كنت مجرد نوع من أعرف. في واقع الأمر أولئك منكم الذين هم أقل مريحة ربما نعرف قدر، أولئك منكم الذين هم أكثر مريحة تعرف قدر، ومرة أخرى إذا لم تكن متأكدا تماما التي تلك الدلاء كنت تقع ضمن كنت ربما في مكان ما بين. ولكن أن تطمئن يمكنك مبادلة بعد بضعة أسابيع إذا تكون الحاجة. وفي الوقت نفسه، للأسبوع القادم لم نبدأ أقسام في حد ذاته، ولكن أقسام السوبر، والتي هي مفتوحة لجميع الطلاب. هذا المقبلة الاحد في موقع ل سيتم الإعلان على الموقع بالطبع سيكون لدينا واحدة ل تلك أقل راحة، فضلا عن واحدة ل تلك أكثر راحة. وتلك في مكان ما بين يمكن اختيار أي من هذين، أو كليهما إذا كنت ترغب، إلى اعتصام يوم. ومحور هذه سيكون في نهاية المطاف على C، ونحن سوف نواصل المحادثة اليوم. مجموعة مشكلة 0 وفي الوقت نفسه هو نأمل في يديك. رسميا غدا، الخميس ظهرا. إلا إذا كنت النقدية في واحد لديك 5 أيام في وقت متأخر، الأمر الذي جعله حتى يوم الجمعة ظهرا. مجموعة مشكلة وسوف 1 وفي الوقت نفسه يكون نشر على الموقع الإلكتروني للدورة و. وهذا سوف يكون لدينا أولا غزوة كطبقة في C. وهذه المشكلة سوف تحدد المواصفات المشي لكم من خلال الكثير من اليات ما بدأنا نتحدث عن يوم الاثنين، وسنواصل الحديث عنه اليوم. C، لينكس، وCS50 الأجهزة، كل ذلك سوف تنتظرك في المواصفات. ساعات العمل وفي الوقت نفسه هم في التقدم، في قاعة الطعام الجامعية. التوجه الى هذا الرابط هنا لرؤية جدولة لهذه الليلة وغدا، إذا كنت ترغب في المشاركة. الأسئلة وفي الوقت نفسه، حتى يتسنى لك لدينا فرص لطرح الأسئلة بشكل غير متزامن، 24/7، أدرك أنك لا تقتصر على الفروع والمكاتب ساعة، بل هذه الأداة هنا، CS50 مناقشة في ذلك URL سيكون بالطبع على الانترنت برنامج وحة الإعلانات، التي عبر يمكنك طرح الأسئلة زملاء الدراسة، وكذلك الموظفين. لذلك نضع في اعتبارنا أن الموارد أيضا. وفي الوقت نفسه تقليد يبدأ يوم الجمعة. كما كنت قد لمحت من دعابة الفيديو يوم الاربعاء الماضي، لدينا تقليد أكثر كل يوم جمعة خلال فترة من أخذ بعض 50 طالبا و الموظفين لمطعم محلي يسمى النار والجليد، الذي نحن انضم عادة من قبل بعض الخريجين أو أصدقاء من الصناعة في التطلع عموما لجعل فئة كبيرة يشعر أصغر. لذلك هو الغداء عارضة تماما. حفنة منا، والموظفين خاصة، وسوف تلعب الكراسي الموسيقية والدردشة مع الطلبة حول 50، حياة خارج 50، الحياة في المستقبل، والعالم الحقيقي، أنا أتحدث عن فرص عمل مع الأصدقاء في الصناعة. حتى إذا كنت ترغب في الانضمام إلينا يوم الجمعة، التوجه الى هذا الرابط هنا. مساحة محدودة، ولكن سنفعل هذا recurringly طوال مدة. التوجه الى هناك لcs50.harvard.edu/rsvp. وإذا كنت لا تحصل في هذه المرة، لا داعي للقلق. وسوف نفعل ذلك مرة أخرى في الأسابيع المقبلة كذلك. لذلك هذا هو الصورة رسمت لنا الأسبوع الماضي، وربما كنت قد كان تجريب في حتى الآن. ولكن دعونا محاولة الاتصال هذا الآن لماذا نحن في طريقنا للقيام اليوم وما بعده. يمكن أن لدي المتطوعين واحد؟ كل الحق، أو عدة. ماذا عن هنا على نهاية، في قميص أزرق. تأتي على ما يصل، ما هو اسمك؟ الانا: الانا. DAVID مالان: الانا. حتى الانا، لمجرد اللحظات، من الرائع أن ألتقي you-- سوف تلعب دور هذه الوظيفة هنا. كتلة الأرجواني قمنا ودعا حتى الآن وظيفة. فما انا ذاهب للذهاب هنا وقبل تقديم الانا هو اسم العلامة قليلا، لجعل الواضح ما هو الدور الذي كنت تلعب. لذلك يجب عليك أن تكون كتلة مثلا. إذا كنت ترغب في المضي قدما والتي وضعت على. ونحن في طريقنا ل الحفاظ على هذا السوبر بسيطة. إذا كان الهدف في متناول اليد هو ببساطة الآن لتنفيذ مع الانا، هذا ما يسمى كتلة القول، وهنا كيف انها الذهاب الى العمل. أنا have-- دعنا نسميها حجة أو المعلمة، انها حقا مجرد ورقة فارغة من الورق. وانها بيضاء إلى نوع من يكون تذكرنا من المربع الأبيض الذي قمت يمكن أن يكتب الكلمات. وفي الوقت نفسه انا ذاهب للذهاب هنا. انا ذاهب الى المضي قدما و إرسال H-E-L-L-O فاصلة العالم. وأنا الآن، كما يقول مبرمج، لا نعرف فعلا كيف أن أقول شيئا. أستطيع الخروج مع الكلمات، ولكن أنا لا بالضرورة أعرف كيف أعبر عن نفسي لفظيا أو على الشاشة. وحتى ما سأقوم القيام به هو اتخاذ هذه القطعة من الوظائف، التي input-- أو حجة، ونحن سوف يطلق عليه، لقد كتب على هذه القطعة من paper-- وانا ذاهب الى الاستعانة بمصادر خارجية لذلك. وبالفعل هذا هو الدور الذي وظائف في لغة البرمجة يمكن أن تقوم به. شيء من هذا القبيل القول يمكن الاستعانة بمصادر خارجية كتلة إلى شخص يعرف حقا ما هي أو يتحدث. حتى إذا كان عليك أن خطوة أكثر هنا لمجرد لحظة، وانا ذاهب لتمرير هذه المدخلات ل الانا، ونطلب منك أن أقول هذا الإدخال. الانا: مرحبا، العالم. DAVID مالان: هذا كل شيء. حتى لا يكون هناك وظيفة. الآن يمكننا أن أعتبر أكثر من ذلك بقليل، يمكننا اتخاذ خطوة إلى الأمام هنا. لأن ذلك كان واضحا مخيب. لذلك دعونا الآن تحويل هذا إلى شيئا قليلا أكثر تعقيدا. لذلك هذا بالطبع هو الإصدار C لدينا. حتى الآن إذا كنت تريد أن تأخذ ذلك مرة واحدة، أن اسم العلامة قبالة، ودعونا كنت وضعت على اسم جديد. ولكن في الأساس كنت لعب نفس الدور، يحدث ذلك فقط ل أن يسمى printf الآن. القصة هي، بطبيعة الحال، الذهاب الى be-- ربما تماما كما هو underwhelming-- ستكون التالية. أنت الآن وظيفة printf. أنا المتصل، أو مبرمج، الذي يريد الوقوف على أكتاف الناس في الماضي مثلك، الذين لقد برزت بالفعل كيف فعلا كتابة شيء أسفل. وحتى هذا الوقت، بدلا من ذلك دعونا نقول فعلا استخدام الشاشة لدينا أكثر من هنا. حتى إذا كنت ترغب في خطوة أكثر من هنا، وانا ذاهب لتمرير هذا مرة أخرى و مدخل إلى بلدي printf صديق. إذا كنت قادرا على المضي قدما و طباعة التي تظهر على الشاشة، ببساطة عن طريق رسم مع ك الاصبع على الشاشة السوداء. ممتازة. كل الحق، والكثير من التشويق لذلك كيف كانت متجهة للعب بها. حتى الآن دعونا نلقي الامور واحد الدرجة النهائية، إذا استطعنا، على النحو التالي. لذلك هذا هو برنامج C كما قلنا في المرة السابقة. وهذا فقط تفعل ما فعلت، و بطباعة إلى الشاشة، مرحبا، العالم. على الرغم من هناك بوضوح الكثير من الاشياء تشتيت هناك. ولكن دعونا نأخذ الأمور فوق خدش و يعرض هذا الإصدار، والتي نذكر كان النسخة الثالثة التي انتهى مع الزمن الماضي. والآن هناك بوضوح اثنين من الاستخدامات من printf. هناك 2 دعوات لالانا في هذه الحالة لprintf، ولكن هناك أيضا دعوة إلى وظيفة أخرى. ما هي تلك الوظيفة بشكل واضح؟ Getstring. يمكننا الحصول على واحد أكثر المتطوعين؟ موافق، وتأتي على ما يصل. ما اسمك؟ خافيير: خافيير. DAVID مالان: خافيير، وتأتي على ما يصل. حتى دور خافيير هو على هذه قطعة من الورق. الذي أنا ذاهب لاستدعاء بشكل عام ق. الآن هذا هو متغير، انها من نوع السلسلة، كما ضمنية قبل أن الخط الثاني في منتصف هناك. وأود لك أن تذهب تفهموني سلسلة. يتوجه تحديدا وصولا الى الاوركسترا قسم ويحصل لي اسم شخص ما، ونعود مع متغير تحتوي على تلك القيمة. يمكن أن يكون أي شخص تريد. هنا نذهب. كل الحق، خافيير هو كتابة اسم. كل الحق. يمكننا جميعا ربما تخمين كيف هذا سوف تلعب بها. نحن ربما الاستفاضة نقطة ما وظيفة تقوم به، ولكن مع ذلك شكرا جزيلا لك. حتى عاد خافيير هذه السلسلة هنا، والتي لا يمكن أن نرى تماما، جوناثان هو سلسلة بعد أن حصلنا على. وحتى الآن ما أنا ذاهب فعلا لتوفير لالانا رغم هو شيء مختلف قليلا. لأنه في هذا الإصدار من برنامج، أولا هناك ذكر الاسم. حتى الحجة الأولى ولست بحاجة لتقديم الانا مع ستكون حرفيا ذكر الاسم. كل الحق، في غاية البساطة كما أن وأود أن تسليم هذا لك. وأنا أكتب وحتى حجة القادمة، إذا كنت تريد المضي قدما وكتابة هذا على متن الطائرة، دعونا نمضي قدما والقيام المثال النهائي هنا لجعل مسح ما حصل في نهاية المطاف أن يحدث. لذلك ذكر الاسم، اكتبها نحو الجزء العلوي إذا كنت لا تمانع، فقط لكي لدينا مجال للالسطر الثاني واحدة. لأن آخر شيء سأقوم الآن لتوفير لكم مع ليست واحدة، لكن قطعتين من الورق. كل الحق. H-E-L-L-O فاصلة ثم سطر فارغ. وذلك ما أنا على وشك أن يسلم الانا الآن هو شيء مختلف قليلا. ليس فقط هو أنها الحصول على هذا، حيث ملء الفراغ يمثل أن percent-- ما كان نائب لقد تم استخدام؟ نعم، حتى في المئة ق. وفي الوقت نفسه أنا ذاهب لتمرير لها في الحجة الثانية، التي هو بالضبط ما خافيير استردادها من جوناثان. لذلك اسمحوا لي أن أقدم لكم هذين. إذا كنت ترغب في، والمضي قدما وطباعة هذا الغرض. ما يحدث في نهاية المطاف الآن هو، مرة أخرى الانا تلعب دور printf. خافيير كان يلعب دور GetString. حتى لا تكون الهدايا التذكارية الخاصة بك. وفي نهاية المطاف ما يحدث، على الرغم من هذا hello-- تذهب موافق قدما وفاصلة. الانا: لم أتلقى بعد هذا أو لا؟ DAVID مالان: نعم، أنت تلقى لهم على حد سواء في وقت واحد. لذا فإن الفكرة هي أنك ويمكن الآن الوجه الصفحة للتعامل مع ثاني من تلك المدخلات اثنين. لذلك هذا هو فقط للتوصل منزل نشير أنه في حين نفذت ألانا هذا الخط الأخضر هنا، ثم خافيير فعل هذا واحد بالنسبة لنا والعودة إلى لي شيئا وسوف ندعو ثانية، ولكنه كان حقا مجرد أن قطعة من الورق من تلقاء نفسه. والآن وقد فعلت الانا هذا الخط الثالث. وعلى الرغم من كل هذا يبدو و حتى خفي لا يصدق ربما للوهلة الأولى، فإنه في الحقيقة هو بهذه البساطة. يمر المدخلات حولها، الحصول على المخرجات، وإما يجري تسليم جسديا العودة شيء، أو رؤية أحد الآثار الجانبية مثل هذا. شيء بصريا مكتوب على الشاشة. لذلك دعونا نمضي قدما و أشكر الانا وخافيير، الذي كان إلى هنا، ل الانضمام إلينا هنا. [تصفيق] حتى الآن دعونا نلقي أمرا مفروغا منه كيف مباشرة كل ذلك قد يكون. ودعونا المضي قدما إلى الواقع تفعل شيئا في الرمز الفعلي. حتى على الشاشة هنا هو لقطة من ما يسمى الأجهزة CS50. وإذا كان لديك لفي، باعتباره 2:00 بعد ظهر يوم الاربعاء، شرح لبعض الأصدقاء ما هي الأجهزة CS50، كيف يمكنك تحديد ذلك في الجملة؟ أي جملة واحدة؟ نعم؟ الطالب: انها مثل برنامج الذي يجعل جهاز الكمبيوتر الجميع تشغيل مع نفس النظام. DAVID مالان: جيد! إنه برنامج التي تمكن الجميع كمبيوتر لتشغيل مع النظام نفسه. انها نوع خاص بك نسخة من التشغيل النظام الذي يحدث ل أن يسمى أوبونتو لينكس. ويتم تشغيله بشكل فعال داخل نافذة على بك ماك أو جهاز الكمبيوتر الخاص بك، ذلك أن هذه الطريقة الحق في الخروج من البوابة في الأسبوع 1، الجميع هنا في فئة لديه حق الوصول إلى نفس الأدوات، نفس التكوين، وليس هناك محدد منحنى التعلم إلى ماك أو جهاز كمبيوتر بشكل خاص. نحن الآن فتحت، داخل CS50 الأجهزة يوم الاثنين، وهذا البرنامج هنا. يحدث أن يسمى gedit. ولكن هذا في الحقيقة مجرد محرر رسومي. انها شيء مثل المفكرة أو نص تعديل على ويندوز أو ماك OS التوالي. واقترحت أن هناك حقا ثلاثة أجزاء هامة لهذه الشاشة. الجانب العلوي هو المكان الذي أن كتابة التعليمات البرمجية. وذلك حيث قضينا معظم لدينا ثلاثة أمثلة في المحاضرة يوم الاثنين. أسفل أننا ما دعوت، هذه النافذة السوداء، نعم؟ الطالب: مترجم؟ DAVID مالان: نحن مترجم الوصول إليها عن طريق تلك النافذة. ولكن بشكل عام. نعم، كان مجرد نافذة الصالة. هذا هو مصطلح الشيخوخة التي فقط يصف أساسا وامض موجه، التي تستخدم منذ سنوات لتكون على واحد من هؤلاء المراقبين أسلوب CRT كبيرة. لكن في الوقت الحاضر انها نوع من الظاهرية في مجال البرمجيات. والنوافذ محطة دعونا اكتب لنا الأوامر. انها نوع من نسخة مبسطة واجهة المستخدم أو واجهة المستخدم. انها ليست رسومية واجهة المستخدم أو واجهة المستخدم الرسومية، انها واجهة يستند إلى نص أو واجهة سطر الأوامر. والواقع حيث ان في نهاية المطاف وكنت قادرا على كتابة بعض التعليمات البرمجية. مرة واحدة كنت قد كتبت بعض رمز الرغم من ذلك، أذكر أنني استخدمت هذا الأمر. وكما هو اسم نوع من يشير إلى أن هذا يسمح لي أن أدلي دعا برنامج مرحبا. ولكن ما كان يفعل ذلك حقا؟ كذلك جعل تتخذ بلدي المدخلات، بلدي شفرة المصدر، وتحويلها إلى ما، في نهاية المطاف؟ رمز الكائن. ورمز الكائن هو مجرد نزوة طريقة للقول والأصفار منها. ثم مرة واحدة كنت أريد لتشغيل هذا الرمز الكائن، مرة أردت أن تمر تلك كمدخل الأصفار ومنها إلى جهاز الكمبيوتر الخاص بي ل الدماغ، ويسمى وحدة المعالجة المركزية أو وحدة المعالجة المركزية، كان لي لتشغيل البرنامج. لكنه لم يكن تماما بسيط يوم الاثنين كما مجرد النقر المزدوج بعض الرمز. بدلا ما لم يكون ل القيام به من أجل تشغيل البرنامج؟ ماذا كان ذلك الأمر الثاني؟ أسمع صغيرة مائلة؟ نعم، نعم؟ الطالب: دوت خفض و اسم البرنامج. DAVID مالان: بالضبط. نقطة القطع واسم البرنامج. الآن ماذا يعني هذا؟ حسنا نقطة هي مجرد وسيلة غامضة لقول الدليل الحالي. مهما كنت في مجلد غير المشار إليه، تتمثل نقطة. الخط المائل هو فقط ما كنت قد رأيت في نظام التشغيل ماك وويندوز لسنوات، انها فاصل بين دليل أو مجلد وبقية بعض الاسم. في ويندوز يحدث للذهاب إلى الوراء، في لينكس وماك OS أنه يحدث أن يذهب إلى الأمام. ولكن انها مجرد فاصل، لذلك فمن مجرد تفصيل النحوي رتيبا. الجزء العصير بالطبع هو اسم البرنامج، مرحبا. وهذا ما جعل خلق بالنسبة لنا. أنه أنتج هذا الملف بالنسبة لنا. ولكن كيف وصلنا إلى هذه النقطة؟ دعونا الآن أسأل السؤال، ما كان حقا يجري هنا، على الأقل مع يتعلق ببعض بناء الجملة هذا؟ حتى في الجملة أو نحو ذلك، كيف نفسر بعيدا هذا السطر الأول هذا سلط الضوء باللون الأخضر؟ ما الذي كان يفعله السطر الأول، فيما يتعلق برنامجي؟ نعم؟ الطالب: [غير مسموع]. DAVID مالان: قل ذلك مرة أخرى؟ الطالب: بما في ذلك وتحميل وظائف الماضية (غير مسموع). DAVID مالان: جيد. بما في ذلك، لن أقول تحميل، ولكن دعنا نقول بما في ذلك الوظائف التي الناس وقد كتبت في الماضي. ويتم تنفيذ هذه المهام في مكان ما في جهاز الكمبيوتر الخاص بي. كتب أحدهم ملف منذ سنوات، وهذا الملف في مكان ما داخل CS50 الأجهزة، أو على القرص الصلب أكثر عموما. وحتى هذا الخط يقول أساسا، تذهب تجد هذا الملف، ومعيار I / O نقطة ح، ونسخ ولصق محتوياته هنا على أعلى ملفي لدرجة أنني لم يكن لديك ل القيام بذلك يدويا نفسي. وبين عصيرا قطعة في الداخل ل وهذا الملف نحن ادعى ظيفة ما؟ ما وظيفة لم نقول أعلن أو الواردة في المواصفة القياسية I / O نقطة ح على الأرجح؟ Printf، أليس كذلك؟ نحن لم يكتب على printf الاثنين، كان موجودا فقط. مثل الكثير الانا خرج للتو على خشبة المسرح وقالت انها مجرد كانت موجودة وعرف كيفية رسم شيء ما على الشاشة، ذلك موجود printf لسنوات عديدة. وهكذا هذه هي الطريقة التي يمكننا الوصول إليه. الآن إذا انتقلنا هنا، كان الرئيسي الذي مشابهة قال للقطعة اللغز يسمى عند النقر العلم الأخضر في العالم من الصفر. انها نوع عادل لل الاسم الافتراضي الذي البشر قررت سيمثل الافتراضي نقطة دخول إلى البرنامج. على قطعة من التعليمات البرمجية البرمجة أن يحصل على تنفيذها أولا. وفي الوقت نفسه هذه الأقواس هي مجعد نوع من مثل الشكل المنحني الكثير من تلك القطع الصفراء الصفر. أنها نوع من تغليف ككل مجموعة من التعليمات معا. لذلك مجرد نوع من يربط معا بعض الوظائف ذات الصلة. printf بالطبع هو أن وظيفة طباعة الشاشة، كما فعلنا للتو. ماذا عن هذه قوسين؟ كيف define-- حتى لو كنت قد أبدا مبرمجة من قبل، ولكن تستند فقط الآن على زيادة نأمل الحدس، ما والأقواس تفعل بالنسبة لنا هنا؟ أو ما هم المحيطة؟ نعم؟ الطالب: انهم يقولون ما وأنت تسير لطباعة مع printf. DAVID مالان: نعم، ما يقولونه وأنت تسير لطباعة مع printf. أو أكثر عموما، فهي المحيطة المدخلات إلى الدالة. لذلك يمكن ان يخطر لك تقريبا تلك قوسين كما يجري مثل المعدن مقطع في هذه الحافظة. انها تحتجز ما، هو ما على وشك أن يستخدم لتقديم الحجج في وظيفة، والتي في وتسمى هذه الحالة printf. في ذلك العام أي تقريبا الوقت نسميه وظيفة، نحن نذهب لرؤية قوسين زوج. ربما مع شيء فيه، مثل الآن، ربما لا شيء في ذلك. ولكن هذا هو المكان الذي من شأنه أن يضع المدخلات أو ما يسمى الحجج إلى وظيفة. وهنا واحدة من هذه الحجة. لقد أبرزت كل شيء بين علامات الاقتباس، لأنه تبين في هذه اللغة تسمى C، عندما تريد لتمثيل string-- التي هي كلمة أو عبارة أو حتى paragraph-- لديك ل تحيط بها مع علامات اقتباس مزدوجة. لا يقتبس واحدة، علامات الاقتباس المزدوجة. وهذا هو بالضبط ما فعلته هنا. وفي الوقت نفسه هناك غير تقليدي رمز في نهاية هناك. مائل ن. ماذا نقول أن الممثلة؟ نعم؟ الطالب: خط جديد. DAVID مالان: خط جديد. الحق، كنت لا عموما هاهنا عندما تريد البرنامج لبصق سطر جديد. بدلا أن تقول ذلك صراحة مع هذه القطعة غامضة المسلم من بناء الجملة، مائل ن أن تريد خط جديد للذهاب إلى هناك. أخيرا الفاصلة المنقوطة. لم نتحدث حقا الكثير عن هذا، وحتى الآن هذا سيكون لعنة من بعض وجودك للمشكلة الأولى مجموعة، عند فشل فقط لتحقيق كنت قد نسيت شيئا بالغباء كما فاصلة منقوطة. ووضع عموما سيكون هناك حل لهذه المشكلة. ولكن ماذا تفعل كل شيء بالنسبة لنا، وكنت أقول؟ الطالب: [غير مسموع]. DAVID مالان: عذرا؟ الطالب: [غير مسموع]. DAVID مالان: التشطيب بيان. انها نوع من مثل الفترة في نهاية جملة الإنجليزية، في حين أنه في هذه اللغة C انها تنتهي بيان. تعليمات البرمجة التعليمات البرمجية التي تريد فقط أن أقول، أنا فعلت مع هذا. الآن نلاحظ أن هذا هو الوحيد هنا. لذلك كنت لا ترغب في الحصول على عادة وضع الفاصلة المنقوطة بعد كل قوسين مغلقة. على سبيل المثال هناك لا شيء بجانب باطلة، وسنقوم أعود في المستقبل ما الوسائل الفراغ. لكن في هذه الحالة printf الخاص بك هو وظيفة، أو بيان المستخدمة، وهكذا نريد أن يكون هذا محطة في النهاية منه. وأنا التقاط عمدا C. و بصراحة الكثير من اللغات مثل C، C + +، جافا، جافا سكريبت، وأي عدد من لغات أخرى لديها الكثير من هذه نوع من التفاصيل النحوية. التي بالتأكيد إذا كنت جديدا على البرمجة يمكن أن رحلة حقا لكم. وسوف، بمناسبة بلدي الكلمات، بعض صح خوض هذه التجربة في ساعات العمل أو في وقت متأخر في الليل العمل على بعض ف مجموعة، حيث برنامج لعنة الخاص بك فقط لا تجمع، أنه لا يعمل، لديك أي فكرة ما هو الخطأ، يبدو تماما صحيح منطقيا لك. وانها لأنك نسيت شيء مثل ضرب فاصلة منقوطة في نهاية بعض الخط. ولكن هذه هي أنواع الأشياء كنت سوف تتعلم فورا أن نرى. وبالفعل هذه هي الأشياء أن وTF في CA لديها تم نوع من المدربين لرؤية بسرعة أكبر بكثير مما كنت. وهكذا وهذا هو فقط أن أقول، وأنت الغوص في مشكلة تعيين 1 خاصة، لا يحصلون على الإحباط من هذه الاشياء. بمجرد نوع من تأقلم للعالم، ل نبدأ في رؤية الأشياء التي قد لا يكون ل نرى للوهلة الأولى هذا الأسبوع الأول. حتى شفرة المصدر هو شيء من هذا القبيل. نريد أن يسلمها إلى ما يسمى مترجم. وكما أن المترجم وقال نحن يوفر الانتاج يعرف رمز الكائن، و ما يسمى الأصفار ومنها. ولكن من هناك، ماذا تعطي لنا؟ إضافة إلى أنه يعطي لنا هذه الأنماط. ومرة أخرى جهاز الكمبيوتر الخاص بك، إنتل في الداخل، يفهم هذه الأنماط من الأصفار ومنها. وأحيانا نمط يمثل الرقم العشري الفعلي كما رأينا الأسبوع الماضي، وأحيانا أنها تمثل بريد إلكتروني كما رأينا الأسبوع الماضي، وأحيانا أنه يمثل التعليم، مثل طباعة شيء ما على الشاشة. printf ذلك لinstance-- ولكن بدلا من ذلك، اسمحوا لي أن الترجيع. لقد تم اتخاذ أمرا مفروغا منه أن تلك الأصفار وتلك هي التي ينتجها هذا جعل الأوامر. ولكن جعل ليس المترجم. جعل ليس الشيء في منتصف وهذا ما ينتج الأصفار ومنها. بدلا جعل مجرد مريح جدا برنامج مسمى هدفها في الحياة هو أساسا لمعرفة كيفية تجميع البرنامج. ونستخدمها في هذه الأسابيع الأولى لأنه فقط يوفر علينا الكثير من المتاعب. ولكن ما جعل حقا القيام عند ترجمة مرحبا، هو، كما قلنا في المرة السابقة، انها تبحث على القرص الثابت أو في المجلد الحالي، ل ملف ما يسمى، على ما يبدو؟ Hello.c، أليس كذلك؟ هذا مجرد نوع من الاتفاقية. انها التعسفي، ولكن هذه هي الامور كما هي. جعل، إذا كنت مجرد تحديد اسم من البرنامج الذي لا وجود له بعد، انها تسير للبحث عن شفرة المصدر في ملف، افتراضيا يعني hello.c. وإذا ما ثبت ذلك، عظيم. انها تسير لتحويل هذا المصدر الرمز إلى رمز الكائن بالنسبة لك. لكن في كل مرة كنت هاهنا بعد تشغيل جعل مرحبا، هل تتذكر رؤية الوقت الماضي طويلة نسبيا وتسلسل خفي من بأحرف بيضاء الأخرى و الأحرف على الشاشة؟ كان جيدا أن الأمر الفعلي، و المترجم الفعلي، الذي كان قيد التشغيل. حتى المترجم الفعلي سنستخدم معظم الفصل الدراسي هو ما يسمى رنة. قد تستخدم بعض منكم البصرية ستوديو قبل، أو دول مجلس التعاون الخليجي، أو أي عدد من المجمعين أخرى. سنستخدم رنة. ورنة تسمح لنا لتحويل الواقع أن شفرة المصدر إلى التعليمات البرمجية الهدف. ماذا يعني هذا في الواقع يعني من الناحية العملية؟ حسنا دعني أذهب إلى واحدة من المجلدات بلدي من المرة السابقة. داخل الأجهزة CS50. واسمحوا لي أن المضي قدما في إنشاء هذا نفس الملف، وتشمل القياسية I / O نقطة ح. الفراغ الرئيسي كثافة العمليات. وسوف نعود في المستقبل لماذا الباحث الوسائل والسبل ما باطلة. ولكن الآن دعونا نفعل مرحبا مائل العالم ن، مثلما فعلنا على متن الطائرة. اسمحوا لي حفظ هذا الملف يسمى hello.c. والآن إذا أريد لتجميع هذه أنا could-- اسمحوا لي تكبير المدى in-- مرحبا جعل دخول. وكان هذا مرة أخرى هذا الخط خفي جدا. ولكن الآن كلمة واحدة على الأقل ربما يقفز عليك. رنة هو أن خط رأينا من قبل. الآن هناك الكثير من الأشياء الأخرى بصراحة أننا سوف موجة أيدينا في اليوم. ولكن هناك عدد قليل من مجموعات فرعية، عدد قليل من الشخصيات هنا التي تهم. ولكن انا ذاهب للذهاب قدما ونفعل ذلك. انا ذاهب الى الجولة الأولى مرحبا، فقط لإثبات أن هذا العمل كما كان الاثنين. ولكن الآن انا ذاهب الى حذف البرنامج. ومثل الكثير كان لدينا هذه الأسماء القصيرة آخر مرة، الأمر لإزالة ما هو جمهورية مقدونيا، إزالة، أدخل. وأنت تسير في الحصول على بعض الأسئلة خفي إلى حد ما. من الصعب تصديق أنه يمكنك جعل حتى هذا السؤال من الصعب فهم. لكن إزالة مرحبا ملف منتظم فقط وسائل هل تريد حذف مرحبا. وأستطيع أن أمضي قدما واكتب Y ل نعم، أدخل، والآن انها ذهبت. ماذا يعني هذا الآن، إذا كنت مسح الشاشة بلدي، غير أنه بدلا من القيام جعل لكم hello-- تعرف ما هي، انني اتلقى جيدة في هذا. انا ذاهب لتشغيل مترجم نفسي. أنا لست بحاجة إلى بعض البرامج ل معرفة ما يسمى ملفي. كتبت hello.c، و أعرف ما يسمى، أنا بوضوح قادرون على كتابة ذلك. لذلك أنا ذاهب الى المضي قدما ولا رنة hello.c أدخل. يبدو أن العمل. وليس هناك إنتاج إضافي، بسبب رنة هي المترجم. انها ما تحويل شفرة المصدر إلى أصفار ومنها. حتى لو كنت الآن تفعل نقطة خفض مرحبا أدخل، HM. رسالة الخطأ الجديدة اليوم. حتى باش هو مجرد اسم امض موجه الذي نستخدمه. هذا التبسيط الإجمالي، ولكن الآن هذا هو كل ما هو، انها موجه وامض. وهذا هو السبب في انه يصرخ علينا. لا يوجد مثل هذا الملف أو الدليل أكثر من ذلك بقليل واضحة. ولكن بالتأكيد أنا جعلت هذا الرمز الكائن. لكن الصيد هو، أن إذا أنا اكتب الأمر لسرد محتويات هذه دليل، وهو ما؟ ليرة سورية للقائمة. هناك حفنة من الاشياء هنا، بعض الذي جاء مع الجهاز، مثل بلدي مجلد سطح المكتب، تحميل مجلد، مجلد دروببوإكس، وجميع تلك الأشياء. ولكن ما هو مثير للاهتمام هو hello.c، التي أنا خلقت قبل لحظة مع gedit. وما هو أغرب أبحث في اسم هنا، ربما أننا لم ترى آخر مرة على الإطلاق؟ a.out، أليس كذلك؟ ذلك مرة في اليوم، و أن تقرر فقط عندما يمكنك ترجمة برنامج للمرة الأولى، وكنت لا تحديد اسم من ملف، دعونا نسميها. وa.out يعني فقط هذا كان إخراج مترجم. لذلك هو اسم الرهيبة للبرنامج. ولكن هذا المنطق، خفض نقطة ل الدليل الحالي، خفض a.out، ينبغي أن يعني هناك في الواقع يا مرحبا برنامج العالم. الآن قليلا الاحماء ممارسة أيضا. إذا كنت ترغب في إعادة تسمية هذا ملف، تبين أن ل نقل ملف من اسم واحد إلى آخر. ام a.out ذلك، وبعد ذلك يمكن أن نسميها مرحبا أدخل. لذلك هذا هو أمر لينكس. DOS كان هذا منذ سنوات، ويندوز لديه نافذة طرفية من نوع ما يبدو مثل هذا، لينكس وماك أجهزة الكمبيوتر لديها هذه المطالبة وامض. على الرغم من أن معظمنا ربما نادرا ما، واستخدامها. ولكن ما قمت به هو تشغيل البرنامج اسمه MV، و ولقد قدمت لها حجتين، إذا جاز التعبير. اثنين من المدخلات. a.out هو الاسم الأصلي. مرحبا هو الاسم الجديد. حتى لو كنت الآن القيام مائل نقطة مرحبا، أدخل، موجود. وإذا كنت تفعل دوت مائل a.out، ماذا تتوقع أنني يجب أن ترى؟ باش، لا يوجد مثل هذا الملف أو الدليل. لأنني مجرد تسميته. لذلك هذا يتطلب قليلا من التعود. لكن المشكلة مجموعة 1 سوف مواصفات حقا عقد يدك من خلال بعض هذه minutae. لأن هذا هو كاملة الهاء الفكري من أكثر إثارة للاهتمام الأفكار المطروحة، والتي في الواقع هو خلق شيء من التعليمات البرمجية. ولكن دعونا نفعل تعديل واحد الآن لهذا البرنامج. يذكر أن آخر مرة فعلت شيئا مثل هذا، ذكر الاسم printf. والواقع أننا مجرد فعل هذا على الشاشة الكبيرة هناك. ثم فعلت سلسلة S يحصل GetString PAREN مفتوحة، PAREN قريبة. وPAREN الاختزال فقط تدوين لقوسين. حتى لا GetString اتخاذ أي الحجج؟ لا المدخلات لا، ولكنه يحتاج الأقواس، لأن هذا هو ما ترسم دعوة من وظيفة. لذلك أنا ذاهب الى المضي قدما ومحاولة ل تشغيل مترجم على هذا البرنامج الآن. رنة hello.c، لأنني لم تغير اسمها في الوقت الراهن. وحصلت على حفنة من الأخطاء. دعونا تصغير هنا. إذا كنت انتقل لأعلى مرة أخرى، كما قلت في المرة السابقة، لأول، نفس الخطأ التي حصلت آخر مرة. على خط 6 من hello.c كان لي سلسلة معرف غير معلنة، لم أقصد قياسي في؟ لم أكن. لأن ما يكون الخطأ الذي أدليت به في هذا البرنامج، إذا كنت تذكر من الوقت الماضي؟ نعم، نحن بحاجة إلى ما يسمى عجلات التدريب أننا سوف تستخدم فقط لبضعة أسابيع. ولكني في حاجة إلى تحديد أن أيضا، في مكان ما داخل الجهاز، هو الملف الذي كتبنا فقط قبل بضعة سنوات. داخل التي هي وظائف يبدو مثل GetString. حتى الآن إذا أعود إلى هنا، تكبير، وإعادة تشغيل رنة hello.c. اللعنة، خطأ آخر. لكننا لم نر هذا من قبل. هذا واحد هو أكثر من ذلك بقليل مقصور على فئة معينة لمعرفة. ولكن هذا هو عمدا على الشاشة، لأننا أردنا أن نقول هذه القصة. عند ترجمة hello.c، تماما كما الصورة من قبل المقترحة، كنت فقط أن تحويل شفرة المصدر إلى أصفار ومنها. الآن الموظفين CS50 قبل بضع سنوات كتب CS50.h، وملف المقابلة، CS50.c. ونحن، قبل بضع سنوات، جمعت تلك الملفات في ملف ما يحدث ليتم استدعاؤها CS50.o. أو يمكن إعادة تسمية قليل من الأشياء المختلفة. ولكن هذا هو وسيلة بسيطة من التفكير فيه. لذلك نحن جمعت في CS50 مكتبة في الأصفار ومنها. ولكن في مكان وأنا محدد أريد أن الجمع بين أصفار بلدي ومنها لبلدي مرحبا العالم البرنامج مع الأصفار ومنها خلقت أن الموظفين CS50 بضع سنوات قبل في برنامج واحد كامل. كل ما قد يحدده الكتابة hello.c رنة هو تجميع hello.c. أنا لم أبلغ رنة ل الارتباط في الأصفار ومنها أن الموظفين CS50 خلق بالنسبة لك منذ بعض الوقت. لذلك فمن السهل على الإصلاح، اندفاعة لتر بالنسبة للارتباط، CS50. وسنرى مرة أخرى هذا قبل وقت طويل مرارا وتكرارا. لكن لاحظ الآن وجود أية شكاوى. وحتى الآن إذا قمت بتشغيل مائل نقطة مرحبا، والآن انها تعمل. على الرغم من أن هذا هو قليلا مضللة منذ أنا فقط صوغه ملف ما؟ a.out. لذلك اسمحوا لي ترجيع لمجرد لحظة. البرنامج الذي جمعت فقط لديه ثلاثة خطوط من التعليمات البرمجية. عندما ركضت مرحبا العالم، مرحبا لحظة مضت، لم أكن أرى ذكر الاسم. وذلك لأن ركضت القديم من البرنامج الإصدار. ولكن إذا كنت لا بالفعل تشغيل دوت مائل a.out أدخل، تذكر اسمك، روب، مرحبا، العالم. جلالة الملك. وهذا النوع من الخلل. ربما يقصد أن يقول روب، أليس كذلك؟ إذن ما هو الإصلاح هنا في التعليمات البرمجية. الطالب: [غير مسموع]. DAVID مالان: بالضبط. لذلك أنا فقط بحاجة لجعل هذا قرص النهائي حتى أنا تمر في عنصر نائب، مثل ملء الفراغ، كما فعلنا قبل لحظة. ولكن في المئة ق الآن أن ملء الفراغ. لذلك دعونا أخيرا لتكشف واحدة الماضي التفاصيل بحيث ليس هناك السحر. انا ذاهب الى المضي قدما والتخلص من HELLOW. انا ذاهب الى المضي قدما والتخلص من a.out. حتى الآن ليس لدي أي برامج، فقط بلدي شفرة المصدر. وانا ذاهب لتشغيل قيادة أطول قليلا، رنة اندفاعة يا مرحبا hello.c اندفاعة LCS50. الآن هذا هو بداية لنوع من ذهاب في أذن واحدة والخروج الآخر ربما. ولكن مجرد ندف بصرف النظر عما يقوم به هذا. رنة هو المترجم، اندفاعة LCS50 عمدا في النهاية يفعل ما في الجملة؟ وصلات إلى مكتبة CS50. العناوين الرئيسية للصحف الأصفار و تلك التي جعلت الموظفين ويحشر لهم في برنامج بلدي. حتى السؤال الأخير هو في متناول اليد، ما هو اندفاعة يا مرحبا ربما به، حتى لو كنت أبدا رأيت هذا النحو من قبل؟ إخراج البرنامج الذي لا يدعى a.out الافتراضية. بدلا لقد أطلق عليها اسم مرحبا. حتى الآن لا يوجد a.out. لا يوجد مثل هذا الملف أو الدليل، لأني قلت صراحة استدعاء هذا البرنامج مرحبا، بحيث أستطيع أن اكتب الآن في اسم من هذا القبيل ويكون ذلك التصرف. الآن بصراحة، هو أن الصبي رتيبا ل أن نتذكر كل ذلك التفاصيل التافهة قليلا، أليس كذلك؟ لذلك دعونا نمضي قدما و تخلص من مرحبا مرة أخرى. ودعونا الآن نعود إلى عالم ويكفي أن نقول جعل مرحبا. ولكن هذا هو السحر الذي جعل تقوم به بالنسبة لك، هذا هو الملل الذي انها تفعل بالنسبة لك. وكما برامجنا و مشاكل الحصول على أكثر تعقيدا، جعل ستكون حقا صديقك. ليست طويلة جدا من الآن ونحن في طريقنا لديك البرامج التي يتم كتابتها ليس مع ملف واحد، ولكن العديد من الملفات، وجعل سوف أتمتة عملية تجميع كل ذلك بالنسبة لنا معا. حتى الآن طباعة. printf هو داخل هذا الملف، ومعيار I / O نقطة ح، التي شهدناها من قبل، ولكن هناك المزيد لprintf من ذلك. هناك ن مائل، ولكن هناك أيضا مجموعة من أحرف أخرى. وتسلسل الهروب هو مجرد طريقة أخرى للقول شيء الذي يبدأ بخط مائل، ليس على خط مائل، مائل، ويفعل شيئا خاصا. ونحن لن أسهب في الحديث عن معظم هذه، ولكن لماذا هناك مائل اقتباس مزدوجة، رأيك؟ لماذا يوجد هذا التسلسل الغريب لل حرفا، اقتباس مزدوجة مائل، ماذا يمكن أن يكون مفيدا؟ الطالب: [غير مسموع]. DAVID مالان: بالضبط، أليس كذلك؟ فكر في العودة إلى برنامجنا العالمي مرحبا التي شهدناها مرات قليلة جدا الآن، في كل مرة رأينا أن العالم مرحبا برنامج لقد كان لدينا علامات اقتباس مزدوجة داخل منها مرحبا فاصلة العالم مائل ن. ولكن اعتقد لنفسك، ماذا لو كنت في الواقع أراد لطباعة علامة اقتباس؟ قد يكون أول غريزة الخاص بك، وأنا لا أعرف لماذا قد ترغب في do-- هنا، نحن يمكن أن يكون قليلا السلبي العدوانية، مرحبا صديق. نحن قد تريد أن تفعل شيئا من هذا القبيل. ولكن لماذا هذا الآن إشكالية؟ تجاهل علامات الاقتباس مجعد أن جانبا جعل رئيسية بالنسبة لنا تلقائيا. لماذا هذه الإشكالية؟ بالضبط. لأن لدينا مثل 4 علامات اقتباس. حسنا أول واحد على الأرجح يذهب مع واحد ثاني، وربما واحد الرابع يذهب مع واحد ثالث، أو، يعني أنا لست حتى متأكدا، ولا هو الكمبيوتر سيكون. أجهزة الكمبيوتر مرة أخرى، المجمعين مرة أخرى، هي غبية إلى حد ما. وأنها سوف تفعل ما فقط كنت أقول لهم القيام به. وإذا كنت لا لبس فيه أنها على الارجح الى رمي خطأ. إذا كنت لا لبس فيها بشأن كيفية جعل زبدة الفول السوداني وهلام شطيرة أشياء غريبة قد تصل. إنها نفس الفكرة. الآن يكفي أن نقول هناك بعض أحرف أخرى، ولكننا سوف يأتون إلى تلك قبل فترة طويلة. أساسا هذه الهروب تسلسل تمثل شيئا أنك قد لا تكون قادرا بسهولة جدا في لوحة المفاتيح، دون الخلط بين الكمبيوتر. الآن وفي الوقت نفسه لدينا النائبة في printf. والتي يمكن أيضا أن تكون مكتوبة في المئة د، في جميع الحالات تقريبا كنسبة مئوية ط، هو عنصر نائب لنوع البيانات؟ ما هو نوع من القيمة؟ عدد عشري. ذلك في الواقع سنبدأ باستخدام المئة ط لأنه أبسط قليلا، مثل عدد صحيح. ط المئة. صحيح أن يحدث ليكون عشري. ق في المئة بالفعل قلنا كان عنصر نائب عن سلسلة. التي هي مجرد كلمة، عبارة، فقرة، مقال، أيا كان. انها سلسلة من شخصيات من بعض الطول. وسنرى قبل فترة طويلة بعض هذه غيرها. ولكن في المئة ج هي لحرف واحد. في المئة و هي ل عدد العائمة نقطة، مثل العدد الحقيقي لها نقطة عشري في ذلك، مما بالطبع ليس صحيحا. وهناك ككل حفنة من الآخرين كذلك. وفي الوقت نفسه في C، و في الكثير من اللغات، لدينا أنواع مختلفة من البيانات. أنواع مختلفة من الزجاج الطاسات اذا صح التعبير. وعاء أنا استخدم آخر مرة كان لكرات بينغ بونغ، ولكن يمكننا أيضا تخزين مختلفة قيم مثل حرف وسلاسل والأعداد الصحيحة في وعاء، مثل متغير، وC ديه هذه. شار هو نوع من البيانات، نوع المتغير، حيث يمكنك تخزين حرف. تعويم هو نوع من متغير في التي يمكنك تخزين عدد حقيقي. الباحث هو بالطبع لكثافة العمليات. وبدلا يبعث على السخرية اسمه طويل طويل حيث يمكنك تخزين أساسا عدد طويل حقا، حتى مع المزيد من الأرقام ثم نموذجي كثافة تخزين القوة. ولكننا سوف نعود إلى ذلك قبل فترة طويلة. في هذه الأثناء CS50 نقطة ح ملف الرأس الآخر التي شهدناها زوجين مرات في الاستخدام، هناك اثنين من أنواع البيانات الأخرى التي لا توجد في C عادة. واحد هو سلسلة، وسنرى في بضعة أسابيع ما السلاسل حقا هي تحت غطاء محرك السيارة. واحد هو منطقي. ومنطقيا هو متغير يمكن أن تأخذ فقط على قيم معينة. وتستند فقط على الأسبوع الماضي شرح خدش، ومؤخرا C، ماذا كنت أخمن هما القيم الممكنة ل بعض الحاويات التي هي من نوع منطقي؟ نعم ولا. واحد وصفر. صحيحة أو خاطئة. والواقع انها آخر يميل أن تكون تقليدية في البرمجة اللغة، يقول شيئا مثل صحيحة أو خاطئة. وفي الوقت نفسه تأتي مكتبة CS50 مع حفنة من الوظائف أن موظفي كتب لك، بالإضافة إلى مجرد الحصول على سلسلة. كتبنا في وظائف مسبقا أن يمكن الحصول على عدد صحيح من المستخدم، الحصول على حرف واحد، الحصول على تعويم، أن هو مجرد رقم مع الفاصلة العشرية. الحصول على فترة طويلة طويلة، حقا قيمة كبيرة من المستخدم. لذلك رأينا هذا فقط في العمل في شكل GetString. ولكن عبر هذه الوظائف ستكون قريبا قادرة على إرسال البرامج التي تحصل على مدخلات من المستخدم. وفي الوقت نفسه النظر في هذا البرنامج، والنظر كيف يمكن أن تبدأ الآن لإضافة إلى ذلك مع بنيات جديدة. جولة مكوكية سريعة ومن ثم سننظر في بعض كتابة بعض برامج يدويا أنفسنا. من الآن فصاعدا إذا كنا نريد أن تنفيذ الشرط، انها لن تبدو وكأنها قطعة صغيرة لطيفة لغز جميل. انها سوف تبدو أكثر قليلا غامضة. ولكن هذا هو الكنسي هيكل شرط في C. كلمة لو، وهما قوسين، داخل منها ستكون نوعا من تعبير منطقي. الآن مائل مائل في الوسط، وهذا هو في الوقت الراهن نوع من مثل شبة الكود نائب التعليمات البرمجية. ولكن أكثر بشكل صحيح، أي سطر من التعليمات البرمجية في C الذي يبدأ مع مائل مائل تعليق. انها مثل مذكرة لزجة التي قد وضعت على مقال، مطبوعة على الورق. انها مذكرة لنفسك. انه ليس لديها ظيفية تأثير على البرنامج. انها نوع من تذكير، انها بنفسك التوثيق لما يجري. حتى قيام بذلك في الوقت الراهن هو نوع من عنصر نائب عن كل ما هو داخل تلك الأقواس المعقوفة في نهاية المطاف سوف تفعل شيئا. وفي الوقت نفسه لديك اثنين من الشوك في الطريق، وإذا آخر بناء مثل هذا. يمكنك إذا، ELSEIF، آخر. الآن ومن الجدير بالذكر، خصوصا إذا كنت قد تم غوغلينغ حول على الانترنت لموارد من الفضول، أو إذا كنت تلتقط واحد من الدورة ل الكتب الموصى بها على C، سترى أن البشر لديهم الكثير تفضيلات مختلفة لكيفية للتعبير عن أنفسهم في التعليمات البرمجية. بعض الناس يحبون لوضع الأقواس المعقوفة كما فعلت هنا. بعض الناس يحبون لوضع مجعد تستعد على سبيل المثال هنا. بعض الناس يحبون لوضع إلسس هنا ثم هذا أكثر من هنا. هناك أي عدد من الطرق ل كود الكتابة، وأيا منها على حق في حد ذاته. على الرغم من أن هناك عدد قليل أن مخطئون جدا. ولكن هناك no-- إذا كان هذا هو في نهاية المطاف نقاش الدينية جدا. في الواقع، واحدة من أكثر مزعج الأشياء عن علم الحاسوب هو كيف عنيد يمكن للعلماء الكمبيوتر أن يكون. وسوف تجد مع مرور الوقت أن حتى كنت في وضع التفضيلات الشخصية عن كيفية التعليمات البرمجية الخاصة بك ينبغي أن ننظر. لا تتصرف تماما، وليس فقط خلق الإخراج، ولكن كيف ينبغي أن ننظر جماليا. وذلك ما سنفعله هو دليل لكم على طول الطريق نحو، في الوقت الراهن على الأقل، أسلوب CS50 القياسية على الأقل يبقي الامور موحدة وسهلة القراءة. ولكن أكثر على تلك قبل وقت طويل من التمييز. تعبير منطقي في C، إذا كنت أردت أن أقول إذا كان هذا الشرط صحيحا وهذا الشرط الثاني هو صحيح، أنت لا تكتب كلمة و، كما تفعل في اللغة الإنجليزية. يمكنك بدلا من ذلك استخدام العطف العطف، لأسباب سنعود إليها. إذا كنت تريد أن تقوله أو كنت تستخدم اثنين القضبان العمودية، والتي على لوحة مفاتيح الولايات المتحدة عموما فوق أدخل بجانب رئيسي إلى مائل. وهذا يعني فقط إذا هذا الشرط هذا الشرط أو غيره صحيحة قيام بذلك. وفي الوقت نفسه هناك هذا شيء مجنون، الذي سيكون لديك مناسبة لاستخدام مرة واحدة في لحظة. ولكن هذا مجرد بديل طريقة للتعبير عن نفسك. هذا، في الوقت الراهن، دعونا تنص، انها مجرد طريقة أخرى للتعبير غير تقليدي إذا، ELSEIF، ELSEIF، ELSEIF، ELSEIF. هو مهيأ فقط لأنها من حيث من الحالات، حيث يمكنك حرفيا تعداد القيم التي قد ترغب في التحقق من وجود. حلقات في الوقت نفسه. رأينا مقارنة الصفر مع حلقة. وانا ذاهب الى موجة يدي في ماذا يعني كل من هذه الأشياء. ولكن تلاحظ أن حلقة سوف جدا غالبا ما تبدأ مع الكلمة ل. أو أنه سوف نبدأ في حين الكلمة. أو أنها سوف تبدأ مع الكلمة القيام به، وتنتهي مع الكلمة حين. ولكن ما نحن على وشك أن نرى هو أكثر الأشياء من هذا القبيل. هنا هو، بشكل عام في C، وكيف قد تعريف متغير وإعطائها قيمة. في C فإنه لا يكفي، في مثل خدش، أنت فقط يقول أعطني متغير يسمى شيئا. عليك أن تخبر C، ونقول المترجم الخاص بك، وأكثر تحديدا، ما هو نوع من قيمة هل نريد ان نضع في وعاء زجاجي. هل هو صحيح؟ إذا كان الأمر كذلك، لديك ل يقول حرفيا كثافة العمليات ثم اسم المتغير، ثم فاصلة منقوطة. إذا كنت بدلا من ذلك يريد سلسلة ودعا انها ق مثلما فعلت قانون بلدي هنا اليوم، كنت أقول منقوطة سلسلة ق. مرة واحدة تريد أن تعطيه قيمة ثم يمكنك استخدام علامة المساواة، والمعروف باسم عامل التعيين. ولاحظ كيف كل هذه الأسطر من التعليمات البرمجية لديه منقوطة في نهاية الامر. ولكن بصراحة هذا فقط تبدو قبيحة قليلا. لماذا لا يمكنني أن أقول إلى الكمبيوتر، وإعطاء لي متغير وتهيئة إلى الصفر. وهذا هو، تعطيني عاء زجاجي فارغ. في حين يمكنك. وحتى واحد من الحكم يدعو عليك لديك لجعل أسلوبيا على مر الزمن و، هل كتابة التعليمات البرمجية الخاصة بك مثل هذا، أو هل نوع من تنظيفه واعجاب الناس من خلال كتابة سطرين واحدة فقط. وهذا من شأنه أن يعتبر عموما بطريقة أكثر أناقة كتابة التعليمات البرمجية أسلوبيا. وظائف نحن بالطبع رأيت. انهم ذاهبون الى اتخاذ هذا الشكل. اسم وظيفة، وبعض الأقواس، ثم ربما بعض الاشياء داخل. أو قد ترى استخدامات وظائف متعددة الجانب إلى جنب، وكأنه شيء من هذا القبيل. الآن بمثابة الظل، يفعل هذه النكتة الآن معنى؟ [ضحك] وهذا لا يعني انه مضحك، لكنه لا ربما جعل أكثر منطقية قليلا. حتى الآن دعونا ندخل في الأجهزة CS50 لحظة. واسمحوا لي أن فتح دعابة واحدة هنا. والواقع أحد الأسباب لإدخال كتالوج ايكيا وميض الصورة من اي فون قبل قليلا كان لادراك التعادل في الواقع معا الحقيقة أنه قبل بضع سنوات فقط، في عام 2007، كان هذا قطعة من التعليمات البرمجية صدر، الذي واحد من تنفيذ أول جدا من قطعة من البرمجيات أن يفعل ما يسمى نصائح والخدع. بالنسبة لأولئك غير مألوف، نصائح والخدع شيء مثل الهاتف أو جهاز iPhone يعني كشف أساسا كيف أن تفعل أشياء مع أن الشركة الذي جعل من لم ينو. وكأنك تريد تثبيت بعض البرامج التي ليس في المتجر، نصائح والخدع هاتفك الذي تفعل أشياء مثل ذلك وأكثر. ولكن ما كان متعة في 2007-- وهناك ما كان العشرات من إصدارات مختلفة من هذه الأمور منذ ذلك الحين، في جميع أنواع languages-- هو أن هذا البرنامج هنا، ودعا iUnlock، كانت مكتوبة فعلا في C. وهكذا أنا سحب ما يصل شفرة المصدر لهذا، فقط لنوع من تظهر لك بعض أوجه التشابه مع بنيات كنا نناقش حتى الآن. الآن هناك طريقة أكثر تعقيد هنا من رأيناه بالفعل في الصف. اسمحوا لي أن انتقل لأعلى قليلا هنا. لكن لاحظ these-- جيدا نلاحظ قليل things-- لكن لاحظ هذه السطور هنا، بما في ذلك معيار I / O نقطة ح. وall-- خط 24، please-- تلاحظ معيار I / O نقطة ساعة ومجموعة كاملة من الآخر الملفات التي على ما يبدو الناس الآخرين وقد كتبت. وإذا كان لنا أن انتقل لأسفل من خلال هذا، قليلا تعسفا، إشعار أنا لا أعرف كيفية كتابة كل هذا نفسي بالضرورة بعد، ولكن هناك إذا. لذلك يبدو هذا له فرع. وإذا كنت انتقل لأسفل قليلا مزيد من هناك آخر إذا. إذا كنت انتقل لأعلى، وأعتقد أن حول خط 100 رأيت ل. لذلك أنا لست متأكدا تماما كيف يعمل هذا بعد، ولكن هذا هو لحلقة التي ستكون ل اسمحوا لي تكرار بعض عدة مرات. وإذا كنت تمرير جميع الطريق إلى أسفل أرى أن هناك تعمل أسفل هنا دعا الرئيسية، وبعض اعتمادات إضافية للمتعة القراءة الخاصة بك. لذلك هذا هو فقط لsay-- وسنضع هذا الموقع بين مصدر مسار ل كود اليوم- أنه حتى بعض هذه الأجهزة التي نتخذها لمنح، في نهاية اليوم كنت لا تزال استخدام هذه البنى الأساسية التي كانت لدينا تم إدخال بالفعل حتى الآن. وهذا يكفي لهذا واحد. كل الحق، لذلك دعونا الآن في الواقع بناء شيء. دعونا نتجاوز شيء من هذا القبيل hello.c، وفتح هذا، دعونا أكتب هذا البرنامج هنا. انا ذاهب الى المضي قدما و كتابة برنامج يسمى adder.c، الغرض الذي في الحياة ستكون مثل بلدي أول آلة حاسبة بسيطة السوبر يضيف بضع الأرقام. لا لأن هذا هو الثابت المشكلة، ولكن لأنه يسمح لي لادراك التعادل الآن معا بضعة أشياء. لذلك أنا ذاهب الى المضي قدما وتشمل معيار I / O نقطة ح وCS50 نقطة ح. انا ذاهب الى القول الفراغ الرئيسي كثافة العمليات. ومرة أخرى في المستقبل سوف نعود إليها في هذا السياق إلى وسيلة باطلة. والآن أنا ذاهب لأقول شيئا مثل printf، أعطني عددا صحيحا. والآن على خط بلدي الثاني، كيف يمكنني التعبير عن نفسي مثل الذي أريد تعريف متغير ما يجري لتخزين عدد صحيح؟ حرفيا ما أقوم اكتب إذا أريد أن إنشاء متغير يخزن عدد صحيح ستقول؟ كثافة العمليات ويساوي getint. بالتأكيد، بحيث يعمل. وفقط من أجل التناسق مع رمز عليك نرى على الانترنت، اسمحوا لي أن التغيير هذا إلى x، فقط بسبب س هو اسم متغير مشترك للاستخدام، على الأقل في الجبر. الآن اسمحوا لي أن نمضي قدما ونفعل printf مرة أخرى. تعطيني عدد صحيح آخر. والآن انا ذاهب الى نوع لنتعلم من هذا النمط، انا ذاهب الى القول الباحث ذ يحصل على GetInt. ونحن لم تستخدم GetInt قبل، ولكن فقط مثل GetString يذهب ويحصل على سلسلة، مثل خافيير فعل من الجمهور، وبالمثل يفعل GetInt بدء امض موجه. وينتظر فعال للمستخدم لإعطائها عددا صحيحا، عن طريق كتابتها في وضرب أدخل. أخيرا الآن انا ذاهب الى القيام به هذا، printf مجموع of-- واسمحوا لي أن الحصول now-- الهوى ط المئة والمئة ط موجود ط تعجب مائل ن. وما رأيك أنا ذاهب ل وضع في الآن باسم مدخلات إضافية لprintf؟ أنا لا أريد أن أقول أقتبس حرفيا العاشر نهاية الاقتباس. أريد أن الطبقة في العاشر و ثم، والآن دعنا الهوى ودعونا نفترض فقط يمكننا أن نفعل ما نريد. ما كنت أريد أن أقول بعد؟ X زائد ذ. والواقع أن ستعمل. انها الحد الأدنى لغات البرمجة أفهم العمليات الحسابية الأساسية، وهكذا ينبغي في الواقع هذا العمل. لذلك اسمحوا لي المضي قدما وجعل لا الأفعى في نافذتي أبيض وأسود إلى هنا، أدخل. خط خفي ولكن لا يوجد خطأ رسالة، لذلك وهذا جيد. نقطة خفض الأفعى، أعطني عددا صحيحا، 1. تعطيني عدد صحيح آخر، 2. مجموع 1 و 2 هو 3. كل الحق، لذلك تافهة جدا البرنامج، ولكن ما عليها القيام به؟ لقد سمح لي لاستخدام وظيفة ندعو هنا، ندعو وظيفة أخرى هنا، مكالمتين إلى GetInt، و ثالثا الدعوة إلى printf، ومن ثم استخدام هذه النائبة. لذلك فمن أكثر من ذلك بقليل متطورة من المرة السابقة. ولكن ماذا لو أريد أن الحصول على مربي الحيوانات قليلا؟ اسمحوا لي أن نمضي قدما ونفعل هذا الآن. اسمحوا لي المضي قدما وخلق ملف جديد يسمى الظروف صفر. وانا ذاهب لإنقاذ بعض الوقت لفئات سبيل ومجرد لصق في ذلك مدونة كنقطة انطلاق. والآن أنا ذاهب لمجرد وضع شيء جديد هنا في الوسط. حتى printf أود عددا صحيحا من فضلك. وكل هذا الرمز متاح على موقع بالطبع، و لا تحتاج إلى اكتبه شاملة في الصف إذا لم تكن ترغب. كثافة العمليات، والآن أنا ذاهب ل استخدام، بدلا من x و y، انا ذاهب الى استخدام ن، وهو ربما الاسم الأكثر شيوعا لعدد صحيح في برنامج كمبيوتر. والآن أريد أن تفعل حكم القليل هنا. انا ذاهب لمعرفة ما إذا ن أكبر من 0، ثم انا ذاهب الى القول يصيح printf--، printf-- اخترت رقم موجب، تعجب مائل ن. إغلاق ذلك. آخر انا ذاهب لطباعة printf اخترت رقما سالبا. الآن قبل أن يصيح في وجهي، دعونا تشغيل هذا البرنامج. اسمحوا لي أن أذهب إلى هنا. وكيف يمكنني ترجمة برنامج دعا الظروف اندفاعة 0؟ جعل الظروف اندفاعة 0. نوع من اسم غبي، but-- اللعنة. OK، جيدة حظة التدريس. لماذا أن كسر؟ ماذا قصد أنا أسمي هذا الملف؟ يمكنك النوع من الاستدلال من علامة التبويب هنا. حتى انها ليست سيئة بأنني فعل هذا، لأن هذا سيحدث ربما البعض منكم. ولذا فإنني اسمه بطريق الخطأ بلدي شفرة المصدر حالة 0. ولكن بلدي شفرة المصدر الاتفاقية ينبغي يكون في ملف يسمى حالة 0 اندفاعة ج، أو أيا كان نقطة ج. لذلك اسمحوا لي أن إصلاح هذا. فقط مثل مايكروسوفت وورد أستطيع أن ترتفع إلى حفظ باسم والقيام حالة 0 نقطة مئوية. الآن فقط أن تكون مرتبة أنا الذهاب الى المضي قدما وإزالة حالة 0، الذي كان النسخة القديمة بلدي. والآن دعونا لا تجعل حالة 0، أدخل. حسنا، يبدو جيدا. حالة 0، أدخل. أود عددا صحيحا من فضلك، 50، اخترت رقم موجب. الآن ماذا عن 50 سلبي؟ اخترت رقما سالبا. ماذا عن الآن، 0. متأكد 0 ليس سلبي. لذلك هذا هو نوع من خلل منطقي. كيف يمكنني تصحيح هذا؟ إلا إذا كان n أقل من 0، قيام بذلك، وإلا نحن يمكن أن يكون لها فرع ثلاثية هنا، printf اخترت 0. وحتى الآن ما إذا كنت إعادة تشغيل هذا البرنامج، بعد ذلك تجميع مرة أخرى مع جعل، ثم أعد الآن حالة 0، ما سوف نرى هنا 0 هو يعطيني ان الانتاج. فأين نحن ذاهبون مع هذا؟ كذلك فإنه من السهل جدا أن نغفل من الغابة من أجل الشجرة. وهكذا تتيح لنا استنتاج مع هذا 2 و 1/2 دقيقة فيديو التي هي في نهاية المطاف قليلا للإعلان من جوجل، ولكن هذا هو حقا دليل على ما حتى باستخدام هذه البناء الأساسية كتل يمكننا القيام به مرة واحدة في نهاية المطاف لدينا قليلا من البرمجة الدهاء من النجاحات. [عزف الموسيقى] SAROO بريرلي (صوتية): كان عليه قبل 26 عاما، وكنت على وشك تحويل 5. وصلنا إلى محطة القطار و ونحن على متن القطار لدينا معا. أخي فقط وقال سوف أكون البقاء هنا، وسأعود. وأنا بس، تعلمون جيدا، أنا قد كذلك اذهبوا الى النوم وقال انه سوف مجرد توقظني. وعندما استيقظت في اليوم التالي اليوم، نقل كله كانت فارغة على متن قطار هارب، شبح القطار أخذ مني وأنا لا أعرف أين. اعتمد إلى أستراليا، لعائلة استرالية. وأمي قد زينت بلدي غرفة مع خريطة الهند، التي قالت انها وضعت بجانب بلدي السرير. استيقظت كل صباح رؤية تلك الخريطة، وبالتالي انها نوع من إبقاء الذكريات على قيد الحياة. كان الناس يقولون، وكنت محاولة العثور على إبرة في كومة قش، Saroo عليك أبدا العثور عليه. كنت قد تومض من الأماكن التي أنا تستخدم للذهاب، ومضات من عائلتي تواجهها. كان هناك صورة والدتي، الجلوس مع ساقيها عبرت، مجرد الفرجة تبكي. الحياة هي مجرد بجد. كان هذا الكنز بلدي. وكنت أبحث في خريطة جوجل و أدرك هناك جوجل الأرض كذلك. في عالم حيث يمكن تكبير إلى، لقد بدأت لديك كل هذه الأفكار وما الاحتمالات أن هذا يمكن القيام به بالنسبة لي. قلت لنفسي، كما تعلمون، كنت قد حصلت على كل تلك الذكريات الفوتوغرافية ومعالم من أين أنت، و تعلمون ما تبدو مثل مدينة. هذا يمكن أن يكون تطبيق يمكنك استخدامها للعثور على طريق العودة. فكرت، حسنا سوف أضع ل نقطة على محطة القطار كلكتا، وخط دائرة نصف قطرها، وانت تعرف، أنك يجب البحث حول هذا المجال. أنا نوع من جاء عبر هذه المسارات القطار. وبدأت بعد ذلك، و جئت إلى محطة القطار الذي تعكس نفس الصورة كان ذلك في ذكرياتي. كل شيء الملائمة. أنا بس نعم، أنا أعرف أين أنا ذاهب. أنا ذاهب لمجرد السماح لل الخريطة التي لدي في رأسي يؤدي لي ويأخذني إلى مسقط رأسي. جئت إلى عتبة المنزل الذي ولدت. وطافت حول 15 متر قاب قوسين أو أدنى، كان هناك ثلاث سيدات واقفا خارج، المجاورة لبعضها البعض. واحد الأوسط صعدت إلى الأمام، و أنا بس، وهذا هو أمك. وقالت إنها جاءت إلى الأمام، وقالت انها عانقني، و كنا هناك لمدة خمس دقائق. أمسكت يدي و أخذتني إلى البيت وحصلت على الهاتف، حيث رن أختي وأخي أن أقول ذلك، كما تعلمون، أخيك للتو كل من ظهر فجأة وكأنه شبح. ثم تم لم شمل الأسرة مرة أخرى. كل شيء كل شيء جيد، لقد ساعدت والدتي خارج، أنها لا يجب أن تكون بعيدا استعبادها. قالت انها يمكن ان تعيش بقية حياتها في سلام. كان إبرة في كومة قش، ولكن كانت هناك إبرة. كل شيء هناك. كل ما لدينا في العالم هو في الصنبور زر واحدة. ولكن عليك أن لديها الإرادة و التصميم على الراغبين فيه. [عزف الموسيقى] DAVID مالان: رائعة شهادة الحلوة لمجرد ما استطعتم تفعل الآن مع التكنولوجيا. سنرى في الأسبوع القادم.