[موسیقی بجانے] -Alright! CS50 -یہ ہے. CS50 -یہ ہے. CS50 -یہ ہے. [MUSIC - Iggy Azalea کی، "پسند"] CS50 سے -My پسندیدہ Memory میں دن پہیلی لئے گئے تھے جب تھا. -Probably صرف وقت مسئلہ سیٹ پر کام کر خرچ عالمی جو اپنے دوستوں اور لوگوں کے ساتھ آخر میں میری blockmates بن. سے -My بہترین میموری CS50 Hackathon کے ہے. -The CS50 Hackathon کے. -Hackathon. -Hackathon. -Hackathon. -The Hackathon کے Bowden کی -Rob. اس کے بارے میں سب کچھ. [MUSIC - Iggy Azalea کی، "پسند"] میں تھا جب -My پسندیدہ میموری ہے مرحلے اور میں مائشٹھیت کردار ادا کیا ایک نوڈ [کی؟ لنک میں؟] [؟ فہرست. ؟] ہم سب مفت ڈراپ باکس کی جگہ ہے کب اور ڈیوڈ کی طرح تھا، آپ کی نشستوں کے تحت دیکھیں. اور یہ سب کے لئے جگہ، کی طرح تھا! [MUSIC - Iggy Azalea کی، "پسند"] کسی کے لئے -My مشورہ آنے والے طالب علم گے واقعی پر کام کرنے کے لئے ہو دوست کے ساتھ P-سیٹ. -Office گھنٹے بہت زیادہ آپ کی دوست ہے. آپ کے تجربے کے سب سے زیادہ -Make آپ کر سکتے ہیں اور کے طور پر بہت سے لوگوں سے ملنے. مدد کے لئے پوچھنا ڈرو مت پہنچاو. ابتدائی ہفتے میں P-سیٹ -Start. مجھے سب سے بڑی بات ہے تمام وسائل کا فائدہ اٹھانے اس CS50 ہے. ابتدائی ہفتے میں دفتر گھنٹے جاؤ. -Definitely شارٹس دیکھنے. آپ P-سیٹ پر آج کل مت پہنچاو. آپ ایک عظیم گروہ اس بات کا یقین مل -Make لوگوں کے ساتھ P-سیٹ پر کام کرنے کے لئے. تم ایک بہت مزہ ہو سکتا ہے اور ساتھ مل کر کام کیا. اپنے آپ کو آگے بڑھانے کے لئے ڈرو مت پہنچاو. کبھی کبھی ہیکر ایڈیشن کے لئے جاؤ. کاغذ پر -Write چیزوں سے پہلے کیا تم نے کبھی آپ کے کمپیوٹر کو چھو. -CS50 میں واقعی بہت اچھا ہے مدد حاصل کرنے کے طریقوں فراہم. مشورہ -My ایک ٹکڑا نیند ہے. کسی نے کہا ہے کہ؟ اس بات کا یقین کے لئے نیند،. یہ کرنا آسان نہیں ہے، لیکن آپ کو یہ کرنا ہے، مجھے لگتا ہے. میں واقعی ذہنی طور پر تیار کیا کہیں گے آپ اس سے محبت کرنے جا رہے ہیں کیونکہ. [MUSIC - Iggy Azalea کی، "پسند"] CS50 -یہ ہے. CS50 -یہ ہے. CS50 -یہ ہے. [MUSIC - Iggy Azalea کی، "پسند"] CS50 -یہ ہے. [تالیاں] DAVID J. MALAN: تو اس CS50 ہے اور اس ہفتے 0 کے آخر ہے. اور یہ صرف کچھ تھا CS50 عملے کے جو آپ کو صرف حصوں میں انتظار اور دفتری اوقات، لیکن، بھی، اس آنے والے ہفتے کے آخر میں CS50 پہیلی دن میں. جس، پھر، نہیں ہے تمام پروگرامنگ کے بارے میں. بے شک، یہ آپ کہ امید کی جاتی ہے کچھ پروگرام کے لئے نہیں پڑے گا، بلکہ استعمال کرتے ہوئے مسائل کے حل آپ کے ساتھ ساتھ wits اور دوستوں. ہم نے کچھ کی طرف سے شامل کیا جائے گا Facebook-- میں ہمارے دوستوں کی آپ یہاں رجسٹر تو جو گزشتہ کئی سال کے لئے، اصل میں لکھ دیا گیا ہے ہمارے ساتھ ان چیلنجز. اور اس طرح، وہ ہو جائے گا بالآخر پہیلی دن چل رہا ہے. اور اس طرح، آپ کو چیلنج کیا جائے گا چیزوں کے واضح طور پر قسم کے ساتھ اور مسائل کہ لوگوں میں فیس بک کے بارے میں سوچنے کے لئے پسند. تو ہے کہ کل ہے. cs50.harvard.edu/register میں رجسٹر. ایک جوڑے پر اب ایک لفظ خاص طور پر عملے کی. یہ یہاں، Ansel ڈف ہے جو اصل میں سے ایک ہے یہ بائنری کے شریک مصنفین میں ہم بدھ کو دیکھا کہ بلب، CS50 اپنے ڈین بریڈلی کے علاوہ میں. Ansel ڈف بھی ایک سابق تھا میرے اساتذہ advisee 3 سال پہلے اور وہ اصل میں اس lectern سے تعمیر. انہوں نے کہا کہ ایسا کرنے کے لئے پر چلی گئی ہے انجینئرنگ سائنسز اور زیادہ. اب، یہاں ان کی تصویر اصل میں ہے CS50 Hackathon کے میں 3 سال پہلے Ansel وہ ایک ادھار جب ہمارے گببارے،، ان کے لیپ ٹاپ کے لئے یہ پھنس گئے اور، 12 اگلا کچھ عجیب کے لئے گھنٹے،، اپنے حتمی منصوبے پر توجہ مرکوز لے ٹوٹ جاتا ہے صرف کھولنے کے لئے Hackathon کے میں کینڈی کے بیگ. لیکن وہ کرنے کے لئے حال ہی میں پر گئے ہمارے ساتھ اس کے ماضی کے موسم گرما میں خرچ، اس کے عملے کے لئے CS50، اور اس کے بعد اب طالب علموں کو اس سمسٹر، اس کے اپنے 3D پرنٹر ہے. اور ایک مختصر میں ایک 3D پرنٹر ہے بالکل اس طرح لگ رہا ہے کہ ایک آلہ. آپ کو ایک پلاسٹک جمع کردہ ساتھ اس کو بھرنے اس آلہ کی طرف سے نیچے پگھل جاتا ہے اور آپ چیزوں کی تعمیر لفظی کچھ نہیں سے. زیادہ سے زیادہ انکجیٹ پرنٹر کی طرح، آپ کو شروع پلاسٹک کے چھوٹے بندیاں توکنا اس فارم کو ایک ساتھ کرنے کے لئے پوری اشیاء بنانے کے. اور مثال کے طور پر، تو Ansel، پہلے اس موسم گرما میں، ایک آئی فون 5 ہے اور وہ واقعی چاہتے تھے فیصلہ کیا ان کی میز پر اس کو سہارا دینے کے لئے. لیکن وہ نہیں چاہتے تھے باہر جاؤ اور کچھ خریدنے ایپل سٹور یا جیسے، تو وہ سے بیٹھ گیا اور کچھ ڈرائنگ شروع. وہ کچھ پیمائش لیا کے طور پر کس طرح موٹی اور ان کے آئی فون کے لئے کس طرح وسیع تھا، وہ یہاں اس تصویر متوجہ وہ چاہتا تھا کہ اس کا فیصلہ ایک 75 ڈگری جھکاؤ ہے کرنے کے لئے یہ گھور رہا تھا کے طور پر وہاں ان کی میز پر اس کے. اس کے بعد کا استعمال کرتے ہوئے، اس کو تبدیل کر دیا ایک 3D CAD ماڈل میں سافٹ ویئر، کہ ایک چھوٹا سا دیکھا کچھ اس طرح. اور پھر وہ روانہ، بالآخر، اصل میں یہ تخلیق کرنے کے لئے. تو اصل میں، یہاں آپ کے اگر کوئی ہے تو، شاید میں ہے، کو پھینک کر سکتے ہیں ایک قطار میں an-- وہاں ہم فون کے ساتھ لوگ ہیں 5، اور یہاں ہم دو زیادہ ہے. اب، نہیں CS50 اپنے، سے outdone جائے کرنے کے لئے چیانگ گانگ نے اس موسم گرما میں باہر قائم کافی کچھ اور تعمیر کرنے کے لئے، اصل میں، اب بھی ہیں کہ وجوہات کے لئے واضح، آہستہ آہستہ کیا گیا ہے ہاتھی کی ایک فوج کی پرنٹنگ پیش اسلحہ اور تنوں کے ساتھ. جس کے ایک جوڑے کے یہاں تو اصل میں ہیں کسی کو اب ایک ہاتھی like-- گا. ٹھیک ہے،. لیکن چیانگ نے کیا کیا ہم سے ہے وہ بہت براہ مہربانی ایک کیمرے قائم کہ ہاتھی، کیونکہ، یقین کریں یا نہ، لیتا ہے کچھ دو اور ایک ڈیڑھ گھنٹے پرنٹ کرنے کے لئے. یہاں تک کہ فون موقف لیا ایک گھنٹہ اور ایک نصف پرنٹ کرنے کے لئے. اور چیانگ آگے چلے گئے اور کیا کیا سامنے ایک اچھا کیمرے قائم کیا گیا تھا اس 3D پرنٹر کے، ایک گھنٹے کے لئے فلمایا اور Ansel کے ڈیزائن کے طور پر ایک نصف طباعت. ہم نے کچھ شہوانی، شہوت انگیز مڑھا اس کی موسیقی ترتیب میں دیکھنے کے لئے آپ کو اس کو دینے کے لئے 3D پرنٹنگ کیسے کام کرتا ہے میں. اور یہاں تک کہ یہ اگرچہ ، اصل میں پلاسٹک میں ہے احساس یہ ایک ایسا علاقہ ہے کہ اگر تعلیمی آپ کی دلچسپی، لوگوں کے درمیان ہیں، یہاں ان جینیفر لیوس کے اسکول میں اصل میں ہیں جو انجینئرنگ، 3D پرنٹنگ پر کام پلاسٹک کی اشیاء. لیکن پھر بھی، تیزی سے، حیاتیاتی مواد کو حل کرنے کے انسانوں کے لئے جسمانی مسائل. لیکن یہاں ایک چھوٹی سی ہے CS50 سے کچھ. [بلند آواز میکانی شور] DAVID J. MALAN: یہ آواز نہیں ہے حقیقت میں اس طرح کچھ، لیکن یہ دیکھنے کے لئے بہت ٹھنڈے ہے اس رفتار سے، اور اس کی آواز کے ساتھ. اب، بدھ کو، کس طرح ہم سب سے پہلے یہاں سے حاصل کیا؟ ہم کمپیوٹر کے بارے میں بات کرنا شروع کر دیا سائنس اور ہم نے اسے کیا کہا. اور یہ، چیزوں کی ایک بڑی تعداد کے بارے میں ہے اور بہت سے مختلف سمتوں ہے جس میں آپ قیادت کر سکتے ہیں CS50 کی طرح ایک کورس کے بعد. اصل میں، آپ کو اٹھایا تو ایک ان غیر سرکاری ہدایت کی کاوچ سرفنگ کے باہر، کتابچے کہ ہم آپ کے ہیں، چاہے وہ فراہم کی ہے صرف CS50 لینے کے بارے میں سوچ، یا شاید، ایک ثانوی کر یا شاید بھی توجہ مرکوز CS میں، اس کے ذریعے پلٹائیں ہے. اور آپ کو ایک تصویر نظر آئے گا اختتام کی طرف اس آپ کو بہت سے مختلف سمتوں سے پتہ چلتا ہے CS میں آپ میں جا سکتے ہیں. لیکن آج کے لئے، ہم پر، ایک بار پھر، توجہ مرکوز کریں گے واقعی بنیادی خیالات میں سے ایک، شاید، آپ کہاں ہیں مسائل کے آدانوں، آپ کی طرف سے نتائج ہے مسائل، اور آپ کے پاس پیدا کرنے کے لئے ہے جس کے ساتھ یلگوردمز ان آدانوں سے ان کے نتائج. اور اس کی ایک مثال، تھا کورس کے، یہاں اس فون کی کتاب. اور ہم جانے کے لئے ایک مثال کے طور پر استعمال کیا درست تھا کہ ایک الگورتھم کے ذریعے. اور پھر ایک نہیں تھا درست، لیکن تیزی سے ایک چھوٹا سا. اور پھر ایک چھوٹا سا ایک تھا کہ زیادہ ڈرامائی، لیکن بنیادی طور پر تیزی سے. ٹھیک ہے، اس فون کی کتاب ہم دعوی کے بارے میں 1،000 صفحات تھا. اور کتنی بار میں نے کیا نصف میں فون کی کتاب فاڑ مائیک سمتھ کی طرح کسی کو تلاش کرنے کے لئے، زیادہ سے زیادہ، 1،000 صفحے کی کتاب میں؟ تو، 10 دے یا لے. اور ایک بار میں میں اس بات کو پھاڑ نصف، یا صرف، زیادہ maturely، نصف میں تقسیم کیا گیا ہے، یہ صرف ہے 1،000 سے 10 صفحات. اور تم، ایک چھوٹا سا extrapolate کر تو unrealistically ایک فون کی کتاب کے لئے، لیکن اس فون کی کتاب کچھ 4 تھا اس میں ارب صفحات، تو مکمل طور پر unwieldy تھا جسمانی طور پر، کس طرح بہت سے بار آپ کو ایک 4 ارب تقسیم کرتے ہیں نصف میں صفحے فون بک؟ تو یہ دے یا لے، اصل میں 32 ہے. اور اس طرح 32 بار صرف، باہر 4 ارب صفحات کی، کر سکتے ہیں آپ مائیک سمتھ کی طرح کسی کو تلاش. اور اس کی کارکردگی ہے. daresay کہ، ایک اچھا الگورتھم ہے. لیکن اس وقت ہم اس سے منتقل کر دیا گیا یہ رسمی طور پر کرنے کی کوشش کریں. اور میں اس pseudocode کے کوڈ کی تجویز پیش کی. pseudocode کے کوڈ رسمی کچھ بھی نہیں ہے. یہ آپ کو حفظ کچھ نہیں ہے. یہ آپ کا اظہار صرف کچھ ہے کافی وجدانی طور پر، انگریزی کا استعمال کرتے ہوئے کسی بھی زبان واقعی، کہ اور succinctly اپنے خیالات میں کہا. لیکن کے بارے میں اہم کیا ہے pseudocode کے کوڈ ہے تمام اندازہ کرنے کی کوشش کریں ہو سکتا ہے کہ ممکن مقدمات. اور یقینا، اس pseudocode میں کوڈ، واقعی تین مقدمات تھے ہر وقت میں فون کی کتاب تقسیم کیا. مائیک بائیں طرف ہو سکتا ہے. مائیک درست کرنے کے لئے ہو سکتا ہے. یا وہ میں ہوں صفحے پر صحیح ہو سکتا ہے. یا چوتھے کونے کیس، تو بات کرنے کی. ایک برا منظر نامے کے ایک ہو سکتا ہے which-- کیا ہو رہا ہے؟ مائیک میں صرف نہیں ہے فون بک بالکل. اور پروگرام جب crash-- جب میک تم لوگوں کو چلاتے ہیں اور پی سی کے سافٹ ویئر آپ کے کمپیوٹر پر کبھی کبھی ، لٹکی ہوئی ہے یا غیر متوقع طور پر مستعفی کہ عام طور پر کچھ کا مطلب ہے کہ پروگرامر، جلد ہی آپ کی طرح کچھ انسان، صرف خراب اور کچھ غلطی کی. شاید شاید اندازہ نہیں تھا کہ فون بک میں مائیک سمتھ ہے. اور آپ اصل میں نہیں لکھتے تو کوڈ اس طرح کے حالات کو ہینڈل کرنے میں، عام طور پر غیر متوقع چیزیں ہو سکتا ہے. آپ کی مشین منجمد کر سکتے ہیں. دوبارہ شروع کر سکتے ہیں. پروگرام چھوڑ کر سکتے ہیں. اور اس طرح ان کے تمام stupidities کے کہ آپ کر سکتے ہیں آپ کا اصل میں کا سامنا کرنا پڑا ہے زندگی، کمپیوٹر کا استعمال کرتے ہوئے تیزی سے صرف ہو جائے گا اس انترجشتھان کی طرف سے وضاحت کی اور کیا ہے کے اس افہام و تفہیم اصل میں ہڈ کے نیچے جا. اب ایک نظر لے کرنے کی کوشش کریں ایک سے زیادہ عام مسئلہ. لینے بجائے ایک جگہ میں حاضری کی طرح یہ بہت سست ہو جائے گا جس ایک، دو، تین، چار کرنے کے لئے. یا شاید دو، چار، چھ، آٹھ. پر، اس کے بجائے، توجہ مرکوز کرتے ہیں ہم رسمی طور سکتا ہے کس طرح عمل کی الگورتھم کی طرف سے جو ہم حاضری لگ سکتا ہے. اور راستے میں، شروع کرتے ہیں کچھ نام لاگو کرنے کے لئے جب اصل میں ہم آج ہم استعمال کریں گے کہ ایک زبان میں پروگرامنگ شروع. تو میں، اب ایک چار منٹ کی ویڈیو آپ کو دے ہم نے اپنے دوستوں کے ساتھ مل کر ڈال دیا ہے کہ ٹی ای ڈی، تنظیم کی طرف سے. ہم ایک سکرپٹ فراہم جس کے تحت اور وہ، برداشت کرنے کے لئے ان کے animators کے لایا اور اصل میں ایک 2D پیدا ایک الگورتھم ہے جو حرکت پذیری. ہم روشنی دھیما کر سکتے ہیں. [موسیقی بجانے] راوی: ایک الگورتھم کیا ہے؟ کمپیوٹر سائنس میں، ایک الگورتھم ایک سیٹ ہے ہدایات کے حل کچھ مسئلہ قدم بہ قدم. عام طور پر، یلگوردمز ہیں کمپیوٹر کی طرف سے پھانسی، لیکن ہم انسانوں کے طور پر اچھی طرح سے کے الگورتھم ہے. مثال کے طور پر، کس طرح آپ گنتی کے بارے میں جانا ایک کمرے میں لوگوں کی تعداد؟ اگر آپ میری طرح ہیں تو ٹھیک ہے،، آپ کو شاید چاہیے ایک وقت میں ہر شخص ایک اشارہ اور صفر سے شمار. ایک، دو، تین، چار، اور تو آگے. ٹھیک ہے، یہ ایک الگورتھم ہے. اصل میں، یہ ایک اظہار کرنے کی کوشش کریں pseudocode کے کوڈ میں باضابطہ طور پر کاٹا. انگریزی کی طرح نحو کہ ایک پروگرامنگ زبان سے ملتا ہے. چلو ن 0 برابر. کمرے میں ہر شخص کے لئے، 1 ن پلس (ن) کے برابر مقرر. کس طرح pseudocode کی تشریح کرنے کے لئے؟ لائن ایک اعلان کے ساتھ ساتھ، تو، ایک متغیر بات کرنے کے لئے کہا (ن) اور initializes ہے 0 یہ اس کی قیمت صرف کا مطلب ہے کہ میں ہماری الگورتھم کے آغاز، ہم ہیں جس کے ساتھ بات گنتی 0 کی قیمت ہے. ہم شروع کرنے سے پہلے سب کے بعد، گنتی ہم نے ابھی تک کچھ بھی شمار نہیں کیا ہے. اس متغیر کالنگ (ن) صرف ایک کنونشن ہے. میں سب سے زیادہ کچھ بھی یہ کہا جاتا ہے کر سکتے ہیں. اب دو demarks لائن ایک لوپ کے آغاز، اقدامات کی ایک ہی تسلسل ہے کہ ہو جائے گا اوقات میں سے کچھ تعداد کو دہرانے. ہماری مثال میں، قدم ہم ہیں لینے کے کمرے میں لوگوں گنتی ہے. لائن نیچے دو لائن ہے بیان جس میں تین بالکل ہم گنتی کے بارے میں جائیں گے کس طرح. پوٹ کاری مطلب دوبارہ کریں گے کہ لائن تین ہے. pseudocode کے کوڈ کے ساتھ کہنے کے بعد 0 میں شروع ہے میں ہر شخص کے لئے کمرے ہم 1 کی طرف سے (ن) میں اضافہ کریں گے اب اس الگورتھم درست ہے؟ ویسے یہ تھوڑا سا پھینک دو. ہیں تو یہ کام کرتا ہے کمرے میں دو لوگوں کو؟ چلو دیکھتے ہیں. لائن ایک ہم 0 ن ابتدا. ان دو لوگوں میں سے ہر ایک کے لئے، اس کے بعد ہم 1 کی طرف سے (ن) اضافہ. کے ذریعے سب سے پہلے سفر میں تو لوپ، ہم 0 1 سے ن اپ ڈیٹ. اس کے ذریعے دوسرے دورے پر اسی لوپ، ہم نے 1 سے 2 ن کو اپ ڈیٹ. اور اس طرح، کی طرف سے اس الگورتھم کی آخر، N، جو 2 ہے یقینا تعداد سے میل کھاتا ہے کمرے میں لوگوں کی. اب تک تو اچھا. کس طرح اگرچہ ایک کونے کیس کے بارے میں؟ 0 لوگ ہیں کہ لگتا ہے میرے علاوہ room-- میں، کون ہے گنتی کر رہے. لائن میں سے ایک میں، ہم دوبارہ 0 سے (ن) کی ابتدا. اگرچہ اس وقت، لائن تین میں تمام پھانسی نہیں کمرے میں ایک شخص نہیں ہے. اور اس ن یقینا میل کھاتا ہے جو، 0 رہتا ہے کمرے میں لوگوں کی تعداد. بہت آسان، ہے نا؟ لیکن ایک وقت میں لوگوں کو ایک گنتی کوئی بھی، بہت غیر فعال ہے؟ یقینا ہم بہتر کر سکتے ہیں. کیوں ایک وقت میں دو لوگوں کا شمار نہیں، اس کی بجائے گنتی کے ایک، دو، تین، چار، پانچ، چھ، سات، آٹھ، اور تو آگے. کیوں شمار نہیں دو، چار، چھ، آٹھ، اور اس پر؟ یہ بھی تیزی سے لگتا ہے. اور یہ ضرور ہے. اس اصلاح کا اظہار کرتے ہیں pseudocode کے کوڈ میں. چلو ن 0 برابر. لوگوں کے ہر جوڑے میں کمرے، (ن) قائم (ن) کے علاوہ 2 برابر. بہت آسان تبدیلی، ہے نا؟ ایک وقت میں لوگوں کو ایک شمار کی بجائے، ہم اس کی بجائے ایک وقت میں ان کے دو شمار. یہ الگورتھم کی، اس طرح، آخری طور پر دو مرتبہ کے طور پر تیزی سے. لیکن یہ صحیح ہے؟ چلو دیکھتے ہیں. ہیں تو یہ کام کرتا ہے کمرے میں دو لوگوں کو؟ لائن میں سے ایک میں، ہم 0 ن ابتدا. لوگوں کے ایک جوڑے کے لئے، پھر ہم 2 کی طرف سے (ن) اضافہ. اور اس طرح اس الگورتھم کی طرف سے آخر N 2، ہے جو یقینا تعداد سے میل کھاتا ہے کمرے میں لوگوں کی. ہیں کہ اگلا مان کمرے میں صفر لوگوں. لائن ایک ہم 0 ن ابتدا. پہلے، لائن تین یہ سب پھانسی نہیں لوگوں میں سے کسی جوڑوں نہیں ہیں کمرے میں، اور تو (ن) 0 رہتا ہے. جو یقینا میچ کمرے میں لوگوں کی تعداد. لیکن کیا ہو تو کمرے میں تین لوگ؟ کس طرح اس الگورتھم کرایہ کرتا ہے؟ ، لائن میں، دیکھتے ہیں ہم 0 ن ابتدا. ان لوگوں میں سے ایک جوڑے کے لئے، پھر ہم 2 کی طرف سے (ن) اضافہ. لیکن پھر کیا ہوا؟ ایک مکمل نہیں ہے کمرے میں لوگوں کی جوڑی، تو لائن دو نہیں لاگو ہوتا ہے. اور اس طرح اس الگورتھم کے اختتام کی طرف سے، ن درست نہیں ہے جو اب بھی 2 ہے. بے شک اس الگورتھم کے لئے کہا یہ ایک غلطی ہے، کیونکہ چھوٹی گاڑی ہو. کچھ کے ساتھ چلو تلافی نئے pseudocode کے کوڈ. چلو ن 0 برابر. لوگوں کے ہر جوڑے میں کمرے، (ن) قائم (ن) کے علاوہ 2 برابر. ایک شخص میں unpaired رہتا ہے، 1 ن پلس N برابر مقرر. یہ خاص طور پر مسئلہ کو حل کرنے کے لئے، ہم نے لائن چار ایک شرط میں متعارف کرایا، دوسری صورت میں ایک کے طور پر جانا شاخ، صرف پھانسی ایک شخص ہے تو ہم ایک دوسرے کے ساتھ جوڑی نہیں کر سکتے ہیں. اور تو اب، چاہے ایک، یا تین ہے، یا کمرے میں لوگوں میں سے کسی طاق، اس الگورتھم اب ان کا شمار کیا جائے گا. ہم بھی بہتر کر سکتے ہیں؟ ٹھیک ہے، ہم threes میں شمار کر سکتے ہیں، یا چوکوں کی مدد، یا اس سے بھی fives اور دسیوں، لیکن اس کے بعد، اس کے حاصل کرنے کے لئے جا رہا ہے مشکل تھوڑا سا اشارہ کرنے کے لئے. دن کے اختتام، چاہے میں کمپیوٹر یا انسان کی طرف سے پھانسی، الگورتھم صرف ہدایات کا ایک سیٹ جس کے ساتھ مسائل کو حل کرنے. یہ صرف تین تھے. کیا مسئلہ تم کروگے ایک الگورتھم کے ساتھ حل؟ DAVID J. MALAN: تو جان بوجھ کر، ایک بہت سادہ پروگرام، ایک بہت سادہ الگورتھم، کچھ حاصل کرنے کے لئے بہت آسان، گنتی کمرے میں لوگوں کی تعداد. لیکن علاوہ چڑھاو ہیں نمائندے سے کچھ اصل میں ہیں کہ یہاں کی خصوصیات جب بھی مفید ہو جا سب سے زیادہ عمل درآمد سافٹ ویئر کی پیچیدہ. تو مثال کے طور، اس کی پہلی سطر میں، ہم متغیر کہتے ہیں، اور الجبرا سے، تم عام طور پر واقف کا استعمال کرتے ہوئے X اور Y اور Z کبھی کبھی، اور تو آگے. لیکن پروگرامنگ میں، متغیر دن کے آخر میں، اب بھی ہیں، اس سے بہت ملتے جلتے. لیکن یہ لگتا ہے کہ شاید آسان ہے صرف ایک کنٹینر کے طور پر ایک متغیر کی. اور، اصل میں، یہ بٹس کی کچھ تعداد ہے آپ کی ہارڈ ڈسک میں کسی نہ کسی طرح سے لاگو یا آپ کے کمپیوٹر کی میموری میں، مستقبل میں اس پر لیکن زیادہ. یہ صرف ایک کنٹینر ہے. اور تم سے کچھ کہنا ہے کی طرح دو ن 0 کے برابر، اچھی طرح سے ہے کہ اس گلاس بلا کی طرح ہے کٹورا یہاں (ن)، صرف ایک صوابدیدی نام، اور ابتدائی طور پر اس میں کچھ ڈال. اس کی قیمت تو کٹورا اب صفر ہے. اور کورس کے آپ کو خبر ہے تو ایک کے بعد لائن میں، اصل کے کچھ لائن اضافہ کوڈ، یہاں اس تیسری لائن میں کے طور پر، 1 کی طرف سے، کہ کیا کہہ طرح ہے (ن) کی موجودہ قیمت، یہ 0 ہے، 1 پلس، ایک طرح کچھ ڈال دیا پنگ یہاں میں گیند پانگ. اس کی اب قیمت متغیر بہت صرف 1 ہے. اور آپ کو بہت جلد، extrapolate سکتا ہے لیکن اب یہ اب یہ تو 3، اور، 2 ہے. تو یہ ایک متغیر ہے. یہ سٹوریج کا ایک ٹکڑا ہے اصل میں کچھ ڈیٹا ذخیرہ. اب کے لئے یہ ایک پنگ پانگ کی گیند ہے. وہاں ایک بڑی تعداد ہے. لیکن یہ ایک میں الفاظ ہو سکتا ہے سپیل چیکر کی طرح پیدا، میں بدھ کے روز کے لئے alluded گزشتہ سال کے مسئلہ سیٹ میں سے ایک. اب ایک اور اہم خیال، اسی طرح ہے کہ ، میں نے دعوی کریں گے بہت بدیہی ہے ایک لوپ کی ہے. اور اس عمل میں لوپ گنتی سب کے ویسا ہی کر، کورس کی، ہے پھر بات اور دوبارہ یا تو ایک ایک وقت میں ایک یا دو وقت میں. اور آپ انگریزی میں اس کا اظہار، یا کر سکتے ہیں pseudocode کے کوڈ، طریقوں میں سے کسی بھی تعداد میں، لیکن "کے لئے" یہ اوے کا استعمال کرتے ہوئے کہ کر کے ایک بہت ہی عام طریقہ ہے. کمرے میں ہر شخص کے لئے، یہ کرتے ہیں. بار بار. اور حقیقت یہ ہے کہ پوٹ دار، لائن تین، کیا مطلب ہے کہ آپ کیا کرنے کی توقع کر رہے ہیں پوٹ دار ہے کہ چیزیں ہے لائن دو خود نیچے. بس ایک انسانی کنونشن، لیکن ایک عام سے ایک ہم اصل اعلی میں دیکھیں گے کے طور پر سطح پروگرامنگ زبانوں. اب تھوڑا زیادہ دلچسپ ہے آپ کو ایک کونے کے معاملے میں جب. مثال کے طور پر، ایک کونے معاملہ تھا جب وہاں ، تین افراد، یا پانچ یا سات تھے یا کمرے میں لوگوں میں سے کسی طاق، twos کے بریک کی طرف سے ہے کہ ایسا کرنے کی وجہ آخر میں آپ جا کیونکہ میں یا تو، کسی کو یاد کرنے کے لئے بہت شروع یا آخر آپ اسے کس طرح پر منحصر ہے. اور تو، اب، میں اس کی شاخ ہے، یا حالت میں ایک شخص، رہتا ہے، تو تو آگے بڑھو اور اس کے ایک ہینڈل حاصل نہیں تھا جو واحد شخص کسی اور کے ساتھ جوڑ بنانے کے. تو ہے کہ ہم کہتے ہیں ایک شرط، یا ایک شاخ. اب pseudocode کے کوڈ زیادہ عام طور پر ہو سکتا ہے مسائل کی کسی بھی تعداد کو حل کرنے کے لئے لکھا. اور میں نے سوچا کہ ہم یہاں ایک لمحے ہے مدعو کرنے کے لئے ہم CS50 کہیں گے اسٹیج پر روب Bowden مالک دو رضاکاروں کی طرف سے شمولیت اختیار کی جائے، جو انتظار کر رہا ہے کوئی اندازہ نہیں ہے. میں نے کہا کہ کے طور پر ایک ہاتھ کے طور پر جلد کے نیچے چلا گیا. آپ کس طرح کے بارے میں پر آئے، یہاں ختم. اور کس طرح کے بارے میں دور سے دور، کس طرح واپس راستے کے بارے میں. واپس قطار، اپنے ہاتھوں کے ساتھ اپ پر آئے. ٹھیک ہے، اور آپ کا نام کیا ہے؟ ANITA: انیتا. DAVID J. MALAN: انیتا. ٹھیک ہے، آپ سے مل کر اچھا لگا. مجھے روب Bowden کو متعارف کرانے. یہ انیتا ہے. اور تمہارا نام کیا ہے؟ KIERSTEN: Kiersten DAVID J. MALAN: Kiersten. Kiersten، اپ پر آئے اور روب Bowden اور انیتا کو پورا. آپ سے مل کر اچھا لگا. KIERSTEN: آپ سے مل کر اچھا لگا. DAVID J. MALAN: ٹھیک ہے، روب. روب Bowden: آپ سے مل کر اچھا لگا. DAVID J. MALAN: انیتا. KIERSTEN: ہیلو انیتا. DAVID J. MALAN: اور آپ کئی سو ہم جماعتوں. تو، اب مجھے آگے بڑھو اور ھیںچو یہاں صرف ایک سادہ پروگرام میک OS کہ مجھے دیں گے اصل میں کچھ نوٹ مختصر میں لکھ. تم لوگوں میں سے ہر ایک کے لئے چاہتے ہیں تو ایک لے وہاں ان اسکولوں میں سے ایک میں پوزیشن، مجھے جانے دو آگے اور ایک فہرست سے شروع ہوتا ہے pseudocode کے کوڈ کے، اگر آپ. اور میں یہاں کیا کرنا چاہتے ہیں، بالآخر آپ کے لئے قسم ہے کچھ ہدایات کہ ہماری سامعین کے ارکان اصل میں ہیں ہمارے لئے پڑھ کرنے کے لئے جا. مجھے آگے اور صرف جانے دو ایک نمبر والی فہرست میں یہ تبدیل ہم وہاں کیا کر رہے تھے سے ملنے کے لئے. اور میں کے ساتھ کیا کرنے جا رہا ہوں آپ کی مدد، ایک پروگرام لکھنے ہے pseudocode میں، جس کے ساتھ یہ لوگ جا رہے ہیں مونگفلی لاگو کرنے کے لئے مکھن اور جیلی سینڈوچ. تو یہ شاید مطابق ہے آپ میں سے کچھ کچھ دکھانا انٹرنیٹ پر دیکھا ہے ہو سکتا صرف ایک مختصر پریشان کن لمحے کے لئے. [موسیقی BUCKEWHEAT بوائز "مونگفلی کا مکھن  جیلی وقت "] DAVID J. MALAN: ٹھیک ہے. یہ کہ اس کے لئے کافی ہے. تو یہاں دریں اثنا، میں نے ایک گوگل شیشے کی جوڑی جس ہم CS50 اپنے روب Bowden پر ڈال دیں گے اس کی آنکھوں کے ذریعہ سے دنیا کو دیکھنے کے لئے. اور ہم نے پوسٹ میں پوری کوشش کروں گا پیداوار اصل میں باندھا کیا روب کی فوٹیج دیکھ رہا ہے اب، یہ اصل لیکچر میں ہمارے دو کے ساتھ ویڈیو اس کے پاس رضاکاروں. تو مجھے کیا کرنے جا رہا ہوں ہے، میں ٹائپسٹ ہو جائے گا. ہم یہاں کا مقصد ہے اصل میں ایک پروگرام لکھنا جس کے ساتھ کرنے کے لئے، آخر میں، ایک مونگفلی کا مکھن اور جیلی سینڈوچ، لیکن ان تین برتاؤ کرنے جا رہے ہیں اگرچہ کے طور پر وہ کمپیوٹر ہیں. اور دن کے آخر میں کمپیوٹر،، اصل میں بہت گونگا آلات ہیں. وہ سپر روزہ ہیں، لیکن وہ صرف کر سکتے ہیں کرتے، لفظی، کیا کہا جاتا ہے. تم صرف ایک مونگ پھلی کا کہنا ہے کہ نہیں کر سکتے ہیں مکھن اور جیلی سینڈوچ. تم ایسا کرنے کے لئے ان کے پروگرام کے لئے ہے. تم ان کو بتانا ہے صحت سے متعلق کے ساتھ کیا کرنا، کم چیزیں بری جاؤ اور، امید ہے کہ، amusingly ٹیڑھا. انہوں نے کہا کہ کے ساتھ، ہم نے کی ضرورت سامعین سے ایک کال آؤٹ کیا قدم چاہئے ایک، ہو یہاں مقصد تو مونگفلی بنانے کے لئے ہے مکھن اور جیلی سینڈوچ. جی ہاں؟ سامعین: روٹی کے [اشراوی] بیگ. DAVID J. MALAN: روٹی کا بیگ کھولنے. تین مدمقابل گے تو لفظی ایسا کرنے کے لئے آگے بڑھنے کے لئے پسند. روٹی کا بیگ کھولنے. [سامعین ہنس] DAVID J. MALAN: تو اس پر کام کرتے ہیں. ٹھیک ہے. تو دو قدم، how-- اس کو مزید لے. جی ہاں، سامنے. سامعین: [اشراوی] روٹی. DAVID J. MALAN: یہ کیا ہے؟ سامعین: روٹی کو ہٹا دیں. DAVID J. MALAN: روٹی کو ہٹا دیں. اسی طرح کے succinct. آپ کا شکریہ. [تالیاں] DAVID J. MALAN: یہ کیا ہے؟ ٹھیک ہے، تو دو کی جا رہی ہے قدم روٹی ہٹا ہو. ٹھیک ہے، کسی کے لئے چاہتے ہیں ہمیں ایک طویل سزا لکھیں؟ کوئی اور؟ [اشراوی] ایک چھوٹا سا زیادہ. نہیں، اب کچھ بھی نہیں. جی ہاں؟ سامعین: جگہ دو ایک دوسرے کے سلائسین. DAVID J. MALAN: جگہ دو ایک دوسرے کے سلائسین. [سامعین ہنس] DAVID J. MALAN: جگہ دو ایک دوسرے کے سلائسین. چار مرحلہ. جی ہاں؟ سامعین: اپنا ہاتھ اور ہلکے مقرر مونگفلی کا مکھن ڑککن کے سب سے اوپر پر. [سامعین ہنس] سامعین: [اشراوی] مونگفلی کا مکھن کے لئے اگلے. DAVID J. MALAN: کیا ہے؟ پھر سے کہو. سامعین: ڑککن کھول اور ڈال یہ مونگفلی کا مکھن کے لئے اگلے آہستہ. DAVID J. MALAN: آہستہ سے ڈال مونگفلی کا مکھن کے لئے اگلے. ٹھیک ہے، ترقی. مرحلہ پانچ. بہترین. جی ہاں؟ چاقو اٹھاو. DAVID J. MALAN: چاقو اٹھاو. ٹھیک ہے، چھ قدم. جی ہاں؟ سامعین: ہینڈل کی طرف سے چاقو پکڑو. DAVID J. MALAN: پکڑو ہینڈل کی طرف سے دفاتر. ہینڈل کی طرف سے چاقو پکڑو. سات مرحلہ. جی ہاں؟ سامعین: مونگ پھلی میں [اشراوی] چاقو مکھن اور کے طور پر تھوڑا سا باہر [اشراوی]. DAVID J. MALAN: میں in-- چاقو رکھو مونگفلی کا مکھن میں سنا "ڈال چاقو اور ہر ممکن حد تک کے طور پر تھوڑا سا لے. " راہ کی طرف سے، سب سے پہلے کاغذ ہٹانے. ٹھیک ہے، نو قدم. نو قدم. نو قدم. ہم اصل میں ابھی تک ایک سینڈوچ نہیں بنایا ہے. جی ہاں؟ سامعین: مونگفلی کا مکھن چھری کا استعمال کرتے ہوئے، انہوں نے کہا کہ روٹی پر مونگفلی کا مکھن کا اطلاق. DAVID J. MALAN: میں چاقو کا استعمال کرتے ہوئے مونگفلی کا مکھن، پر مونگفلی کا مکھن کا اطلاق روٹی کہا. [سامعین ہنس] DAVID J. MALAN: ٹھیک مرحلہ 10. مرحلہ 10. جی ہاں؟ سامعین: ذائقہ مونگ پھلی مکھن معیار کو یقینی بنانے. [سامعین ہنس] DAVID J. MALAN: مرحلہ 11. مرحلہ 11. مرحلہ 11. چلو. جی ہاں؟ وہاں. سامعین: احتیاط جیلی اٹھا. DAVID J. MALAN: احتیاط جیلی اٹھا. ٹھیک ہے، اور پھر ایک ہاتھ تھا. تمہارے پیچھے. جی ہاں، نیلے رنگ میں. سامعین: ٹھیک ہے، کو ہٹا دیں جی ہاں، [اشراوی] سے ڑککن، جیلی سے ڑککن کو ہٹا دیں. [سامعین ہنس] DAVID J. MALAN: جیلی سے. ہا ہا. [سامعین ہنس] DAVID J. MALAN: اور؟ سامعین: اور بمشکل کسی بھی [اشراوی] سویپ. [سامعین ہنس] سامعین: جی ہاں، [اشراوی] سے پہلے، جیلی سے کاغذ ہٹانے. DAVID J. MALAN: جیلی سے کاغذ کو ہٹا دیں. مرحلہ 14. ہم وہاں تقریبا رہے ہیں. جی ہاں؟ سامعین: الٹائیں جیلی بوتل سے پہلے سب کچھ باہر آتا ہے. DAVID J. MALAN: الٹائیں جیلی جیلی سے پہلے بوتل سے باہر آتا ہے. مرحلہ 15. سامعین: ٹوپی کی جگہ لے. DAVID J. MALAN: ٹوپی کی جگہ لے. مرحلہ 16. جی ہاں؟ سامعین: [اشراوی] DAVID J. MALAN: پھر سے کہو. سامعین: آپ کی جیلی کی ٹوپی لے لو. DAVID J. MALAN: آپ جیلی آف. تو افوہ really--. چلو. ٹوپی کی جگہ لے. تم نے کہا cap-- رکھو جیلی سے ٹوپی ہٹا. ہم ایک لوپ کے تھوڑا سا میں ہو کی طرح محسوس. مرحلہ 17. جی ہاں؟ سامعین: [اشراوی] DAVID J. MALAN: پھر سے کہو. سامعین: [اشراوی] DAVID J. MALAN: step-- پر واپس جائیں سامعین: [اشراوی] DAVID J. MALAN: کو ہٹا دیں مونگفلی کا مکھن سے ٹوپی. جی ہاں؟ سامعین: ڈراپ روٹی پر جیلی. DAVID J. MALAN: تمام ڈراپ روٹی پر جیلی. DAVID J. MALAN: ہم وہاں تقریبا رہے ہیں. مرحلہ 19. سامعین: زیادہ جیلی کو ہٹا دیں. DAVID J. MALAN: ہا ہا، جیلی. [تالیاں] DAVID J. MALAN: کیوں we-- نہیں ایک اور قدم اس گھر لے. ایک اور قدم ہے اور پھر ہم سینڈوچ کی خدمت کریں گے. جی ہاں؟ سامعین: [اشراوی] DAVID J. MALAN: کوئی سینڈوچ جبکہ remains-- چلو بڑھائیں کھانے this--. [سامعین ہنسی] DAVID J. MALAN: ٹھیک ہے، شکریہ آپ یہاں ہمارے رضاکاروں. [اپلاز} DAVID J. MALAN: ہم نے کچھ اچھا ہے آپ میں سے ہر ایک کے لئے تحفہ الگ. آپ اپنے مونگفلی کا مکھن، جیلی، اور روٹی گھر واپس لانے کے لئے. آپ کا شکریہ. KIERSTEN: آپ کا شکریہ. DAVID J. MALAN: [اشراوی] خوش آمدید. [تالیاں] DAVID J. MALAN: تو، اس کی، ہے کورس کے، ایک مضحکہ خیز مثال. ٹھیک ہے نا؟ لیکن اس قسم کی ہم کس طرح ظاہر کرتا ہے حاصل کی جاچکی کے لئے انسانوں کو صرف واضح طور پر لے. اور حقیقت میں کیا گیا ہے کسی دوسرے انسان سے بات، وہ صرف آپ کا مطلب کیا ہے جانتا ہے. کمپیوٹر نہیں جا رہے ہیں آپ کا کیا مطلب معلوم کرنے کے لئے، اس وقت بھی جب کے طور پر، کا استعمال کرتے ہوئے ہم، آج کے بارے میں ہیں شروع میں کچھ پروگرامنگ، ایک ڈریگ اور ڈراپ، پہیلی ٹکڑا انداز زبان. بھی نوجوان کے لئے ڈیزائن کیا بچوں، آپ کے پاس تو واضح اور کے ساتھ ایسا لغوی ہونا کیا آپ کو آپ کے پروگرام کرنا چاہتے ہیں. اب آخر میں، ہم ہیں پروگرامنگ جا رہا نہیں pseudocode کے کوڈ میں، نحو کی طرح انگریزی، لیکن کوڈ یا، زیادہ مناسب طریقے سے، ماخذ کوڈ. ماخذ کوڈ کو صرف پسند ہیں طریقہ ہے آپ اصل میں کوڈ بیان کے لئے ہے کہ ایک کی بورڈ کے ساتھ لکھنا انگریزی نہیں SE فی میں. یہ C یا جاوا یا C + + یا کچھ میں ہے اس طرح، ہم جلد ہی دیکھیں گے کے طور پر. اور حقیقت میں، صرف ایک ڈرانے پہلی نظر میں، آپ کے چند، یہ ایک زبان میں لکھا گیا ایک پروگرام ہے C. لیکن آپ میں سے چند ایک غیر ڈرانے کے لئے کہا جاتا ہے، آپ کو مکمل طور گے کیا ہو رہا ہے سمجھنے کے آنے اگلے پیر کو جب یہ کچھ اس طرح کے لئے آتا ہے. سچ کہوں تو، یہ ایک بڑی زبان ہے. یہ کافی پراسرار ہے لیکن اس نمائندے کے ان دنوں زبانوں کا ایک بہت کی ہے کہ قوسین اور گھوبگھرالی کے بہت سے ہیں منحنی خطوط وحدانی اور اقتباس کے نشانات اور وقف ناقص. اور اس کی ایک بہت نہیں ہے کہ syntactic چیزیں تمام ذہنی دلچسپ میں. بے شک، یہ ایک سراسر تباہی ہے بہت سادہ خیالات سے اس کے چہرے میں گھور رہے ہیں. یہ پروگرام، آپ صرف اندازہ لگا سکتا ہے، کسی کے کمپیوٹر کی سکرین پر پرنٹ الفاظ "ہیلو کوما دنیا." کہ یہ ہے. تو واضح طور پر، ہے ہے کہ بہت ساری چیزیں کی راہ میں ہو رہی ہے وہاں کچھ obviousness سے، لیکن یہ بہت جلد پرچی جا رہا ہے دور اور مکمل طور پر بدیہی. بے شک، ہم کیا کرنے جا رہے ہیں آج یہ کافی پیچیدہ کشید ہے پروگرام تلاش، جس میں ایک بار پھر آپ آ جائیں گے فوری طور پر سمجھ، لیکن کچھ کے لئے بہت آسان. صرف ہم کیا مطلب ہے کا کہنا ہے کہ. ہم کیا مطلب ہے کی ایک تصویر کو اپنی طرف متوجہ کرتے ہیں، یہاں ان پہیلی کے ٹکڑے ٹکڑے کی راہ کی طرف. تو یہ ایک پروگرامنگ ہے شروع کے طور پر نام سے جانا جاتا زبان. یہ ایم ائی ٹی کی میڈیا لیب کی طرف سے تیار کی گئی تھی. اور آپ کے مسئلہ میں کیا دیکھیں گے، صفر سیٹ جس، کے بعد آج رات جاری کیا جائے گا ہم آپ کو اس کے لئے جانا پڑے گا یہاں scratch.mit.edu URL. اور وہ ایک ویب ہے کی بنیاد پر انٹرفیس ہے جس کے ذریعے آپ کو آپ کے سب سے پہلے پروگرام لکھیں گے. یا پہلے کے ساتھ آپ کے ان تجربہ، آپ کے دوسرے پروگراموں، لیکن ایک ایسے ماحول میں ہے شاید ایک چھوٹا سا مجریچت اور اس کچھ پیدا کرنے کے لئے دھکا گا یہ بہت بصری ماحول کا استعمال کرتے ہوئے. اب، میں جا رہا ہوں یہاں کیا پروگرام خود کو کھولنے کی ہے. یہ نہ صرف ایک ویب براؤزر کے طور پر موجود لیکن یہ بھی ایک ڈاؤن لوڈ، اتارنا پروگرام کے طور پر تو آپ کو اصل میں استعمال کر سکتے ہیں آپ کو انٹرنیٹ تک رسائی نہیں ہے. اور میں ایسا کرنے جا رہا ہوں یہاں، Sanders میں، صرف کیس میں وائی فائی نہیں ہے سپر اچھی طرح سے تعاون. اور میں کیا کرنے جا رہا ہوں بات یہ ہے اس پروگرام کے چند خصوصیات. تو، صاف کرنے کے لئے، میں صرف ڈبل ہے ، اپنے ڈیسک ٹاپ پر آئکن پر کلک کیا یا equivalently، scratch.mit.edu لئے گئے اور یہ اس ونڈو کو نکالا ہے. یہ ایک پروگرامنگ ماحول ہے. یہ سافٹ ویئر کی ایک ٹکڑا ہے کہ ایم ائی ٹی میں اپنے دوستوں کی کچھ امریکی ہیں اور آپ کو لکھنے کے لکھا ہے کہ ایک زبان میں پروگراموں اسکریچ کہا جاتا. اب یہ ایک ہو بھی سکریچ کا نام ہے جو بلی اور یہ وہ رہتا ہے جس میں ان کی دنیا ہے. یہ ہے کہ، اس سے بات کرنے، مرحلہ ہے سب سے اوپر بائیں کونے پر مستطیل. اور اس نے ایک بلی کی طرح نظر کرنے کی ضرورت نہیں ہے. تم نے اس کی نظر کر سکتے ہیں کچھ اور آپ کی طرح بہت سے ایسے sprites کر سکتے ہیں، یا ایک پروگرام میں حروف،. دریں اثنا، یہاں تک پر حق، ایک بڑی خالی سلیٹ ہے. اور یہ، ایک لمحے میں، جہاں ہے ہم پروگرامنگ شروع کرنے کے لئے جا رہے ہیں گھسیٹنے اور گر کی طرف سے ان گرافیکل پہیلی صحیح ہے کہ ٹکڑے ٹکڑے یہاں وسط میں. اور ان میں سے جس طرح زیادہ ہے ہم کلاس میں یہاں پر وقت خرچ کریں گے کہ آپ کو تلاش کریں گے کیونکہ وہ سب کے سب کافی بدیہی ہیں. ایک بار پھر، یہ ڈیزائن کیا گیا ہے بچوں، لیکن ہم نے کے لئے ان میں سے کچھ کے علاوہ چڑھاو کے لئے استعمال ، loops کے متغیر کے بنیادی خیالات، ضوابط، اور، جلد، چیزیں افعال اور واقعات کی طرح اور موضوعات اور ہم کریں گے دیگر پسند چیزوں اصل بنانے کے لئے طویل عرصے سے پہلے حاصل کرنے کے لئے شروع سے کچھ. شلیش ارادہ. اب، میں یہاں کیا کرنے جا رہا ہوں نہیں تحریک، لیکن کنٹرول پر کلک کریں. اور یہ صرف ایک ہے یہاں کی درجہ بندی اور میں نے ایک مختلف دیکھیں رنگ کے بلاکس کی مقرر. لیکن چند ایک واقف الفاظ. اور "اگر کسی" "اگر" اور "دوبارہ." اور آپ شاید اندازہ لگا سکتے ہیں کہ، شاخ کی یاد تازہ ہے یا حالات ہم نے دیکھا، اور یہاں تک کہ looping کی تعمیر. تو ہم یہاں اسی طرح کے بلاکس ہیں. لیکن سب سے دلچسپ یہاں اس میں سے ایک ہے. اس سبز پرچم پر کلک کیا جاتا ہے تو، یہ، پہلے programing کے ساتھ ان لوگوں کے لئے تجربہ، برابر ہے ایک اہم تقریب. لیکن ان لوگوں مجریچت کے لئے، اس پہیلی ٹکڑا ہے کہ ہمارے پورے پروگرام شروع لات گا. میں نے جب یہ لفظی اس میں، کا مطلب ہے کہ پروگرام، اور ایک سبز flag-- کلک کریں آپ یہاں دیکھ سکتے ہیں UI کے سب سے اوپر بائیں کونے، تو سبز پرچم دیکھیں ریڈ سٹاپ سائن کرنے کے لئے اگلے؟ میں نے اس پر کلک کریں جب، میرے پروگرام کو چلانے کے لئے جا رہا ہے. اب، میں کچھ کرنے کے لئے جا رہا ہوں سکریچ کے ساتھ سپر آسان. میں آگے جانے کے لئے جا رہا ہوں اور نظر پینل پر جائیں یہاں، میں نے ایک گروپ ہے جہاں جامنی پہیلی ٹکڑے ٹکڑے، اور میں آگے جانا ہے اور ایسا کرنے کے لئے جا رہا ہوں کچھ سپر سادہ طرح، کا کہنا ہے کہ. اور then-- نوٹس اس سفید باکس میں متن میں کہنے جا رہا ہوں editable-- ہے "ہیلو دنیا،" صرف ہم پسند کہ متن میں کیا تھا ورژن ایک لمحے پہلے. اور اب میں جاؤ اور اس پر کلک کریں سبز پرچم، اب میں پروگرام ہے. یہ ایک خاص طور پر نہیں ہے دلچسپ پروگرام، لیکن میں کمپیوٹر کچھ کرنا بنا دیا. میں نے ایک پروگرام شروع کیا اور اس کے میں ایسا کرنے کو کہا کیا. اب، میں ھیںچ کر ڈراپ کرنے کے لئے جاری کر سکتے ہیں زیادہ اور ان پہیلی کے ٹکڑے ٹکڑے سے زیادہ اور وہ لئے interlock کے لئے جا رہا ہے، لیکن کر رہے ہیں یہاں پر کچھ اصطلاحات تپپڑ دو ہم بار بار دیکھیں گے کہ کورس کے دوران، اور واقعی کمپیوٹر سائنس میں اور عام طور پر پروگرامنگ. یہ بلاک، جامنی رنگ میں، چلو "کا کہنا ہے" صرف ایک بیان بلا شروع. یہ حقیقت کے ایک بیان کی طرح ہے. ایسا. تو، اس کی ایک قسم ہے ہدایات آپ کو اس حصہ کے طور پر ایک کمپیوٹر کو کھانا کھلانا کر سکتے ہیں ایک پروگرام یا ایک الگورتھم کی. اور واضح ہو، آپ نے شاید لئے حاصل کی جاچکی لیا کہ آپ کو آپ کے کمپیوٹر پر پروگرام ہے. اور وہ قسم الگورتھم کی ہیں، لیکن ایک پروگرام واقعی الگورتھم کی ایک گروپ ہے بعض انسانوں نے لکھا ہے کہ. وہ اس کو پیک اور وہ، آپ کو تو اسے فروخت یا وہ ایک ویب سائٹ پر شائع آپ کو ڈاؤن لوڈ کرنے کے لئے. تو، ایک پروگرام صرف ایک ہے zeros اور ہیں کے پورے گچرچھی کہ، کسی نہ کسی طرح، انسان پیدا. اور zeros کے ان نمونوں اور ہیں، بالآخر، چیزوں کی نمائندگی "ہیلو کا کہنا ہے کہ دنیا" یا "کھیل کی طرح اس موسیقی "یا" اس ویڈیو کے کھیل " یا "ایک ای میل بھیجیں." لیکن ہم میں واپس آ جائیں گے راستے میں زیادہ تفصیل کیا جب آپ کو ایک پروگرام ہے، اپنے آپ کو، ان کے لکھنے. یہاں ایک اور statement-- ہے "ایک سیکنڈ کے لئے انتظار کریں." اگر میں چاہتا میں نے ابھی تک اس کا استعمال نہیں کیا، لیکن میرا پروگرام ایک لمحے کے لئے روکنے کے لئے کچھ کرنے کے لئے، میں نے ایسا کرنے کے لئے یہ بتا سکتے ہیں. ایک سیکنڈ رکو. اب ایک "آواز ادا." ہو سکتا ہے تو، یہ، یہ فیرنا کرنے کے لئے منفرد ہے آواز کو کھیلنے کے لئے کی صلاحیت ہے. تو، ایک بیان میں شاید استعمال "آواز ادا."، یہاں، ہے دریں اثنا، بولین اظہار، تو یہ ایک اچھے لفظ ہے مسٹر bool کے نام صرف ایک آدمی کے نام سے منسوب، اور یہ سب ایک سوال کے بارے میں ہے. صحیح یا false-- ماؤس نیچے ہے؟ ایک بولین اظہار صرف ہے انگریزی میں کچھ اظہار کہ صحیح یا غلط ہے. یا تو پر یا بند. یا تو ایک یا صفر. آپ اس کے بارے میں سوچ کر سکتے ہیں طریقوں میں سے کسی بھی تعداد میں، لیکن یہ تو سچ ہے یا اس باطل، بالآخر. تو "ماؤس نیچے سوالیہ نشان،" کہ ایک بولین اظہار ہو جائے گا. اور آپ شاید، دوسروں کے بارے میں سوچ کر سکتے ہیں. مثال کے طور پر، "بائیں نمبر ہے صحیح تعداد سے کم؟ " کہ، بھی، ہو جائے گا ایک بولین اظہار. "سے کم" ایک بولین اظہار ہے. یہ ایک، بھی، "چھونے ماؤس پوائنٹر." مجھے یقین نہیں ہے کیوں کہ وہ ماؤس پوائنٹر یہ کہا جاتا ہے. یہ صرف ہے، کرسر ہے، کا مطلب ہے کہ بلی کو چھونے، سکرین پر تیر، مثال کے طور پر. یا سکرین کے کچھ دیگر پہلو. اور یہ، پھر سے، ایک سوال ہے اور کہ ایک بولین اظہار کرنا. کچھ ہے کہ آپ کو ہو سکتا ہے حالت میں استعمال کرنا چاہتے ہیں. تو ہم صرف ایک لمحے میں آ جائیں گے. تم ایک دوسرے کے ساتھ کر سکتے ہیں "اور" چیزیں. تو، اگر آپ کو یہ تو چیک کرنا چاہتے ہیں تو ، معاملہ ہے اور یہ معاملہ ہے آپ کو اس طرح ایک "اور" بلاک استعمال کر سکتے ہیں. اور یہاں اس شرط ہے. چھوٹی سی کھولنے کی شکل نوٹس یہ پیلے رنگ پہیلی ٹکڑا کے سب سے اوپر میں، اس شکل کی یاد تازہ ہے ہم صرف ایک لمحے پہلے دیکھا ہے. ان بولین اظہار میں سے ہر ایک ان کی طرف اشارہ کناروں ہے بائیں اور دائیں. ایم ائی ٹی کے لوگوں کے فیصلہ کیا ہے کیونکہ اور یہ کہ کہ ضعف پہنچانے کے سائز کی طرف سے، آپ کی قسم، لوگوں کی مدد کر سکتے ہیں دونوں طلباء اور بچوں، قسم کی لفظی خالی میں بھرنے کے لئے. اب کہ puzzle-- افتتاحی، ایک چھوٹا سا چھوٹا ہے اور ہم نے اس پروگرام میں دیکھیں گے کے طور پر، شروع میں، فٹ ہونے کے لئے ہو جائے گا. یہ بالآخر، اس کی شکل کو برقرار رکھنے جائے گا. تو ایک شرط آپ فیصلہ کرتے ہیں "میں نے کچھ کرنا ہے یا نہیں کرنا چاہئے؟" ایک بولین اظہار اصل سوال یہ ہے آپ میں جانا ہے فیصلہ کرنے کے لئے استعمال کر رہے ہیں بائیں یا میں درست کرنے کے لئے جانا ہے میں اس کا سامنا ہے جب راستے میں کانٹا نام نہاد؟ آپ کے پاس دو شاخیں ہیں کر سکتے ہیں. کچھ سچ ہے، ایسا اس، اور، اس طرح جانا یا آپ کو صرف میں کچھ نہیں کر سکتا تمام، اس بلاک تقاضا طور پر. اسی طرح، ہم گھوںسلا ان چیزوں کر سکتے ہیں. تو آپ میں کانٹا ٹرپل کرنا چاہتے ہیں تو سڑک، یہ یا یہ یا وہ کرتے ہیں، آپ کو ان چیزوں کے ساتھ مل کر صرف گھوںسلا کر سکتے ہیں. اور یہ تھوڑا حاصل کرنے کے لئے شروع ہوتا ہے بدسورت، آخر میں، اس بات کا یقین کے لئے، لیکن منطق اب بھی وہی ہے. آپ لفظی پڑھ سکتے ہیں نیچے یہ سب سے اوپر اور یہ اگر یہ means-- کیا کہتے ہیں سچ ہے،، ایسا کسی اور اگر. ایک لوپ شروع میں آسان نہیں ملتا. ہمیشہ مندرجہ ذیل کام کریں. اب آپ سوچ بھی نہیں سکتا وہاں نہیں ہے کیونکہ زیادہ سے زیادہ کر سکتے ہیں سب سے اوپر کے درمیان زیادہ جگہ اس پہیلی ٹکڑا افتتاح کے نیچے. لیکن آپ کو شروع کرنے کے لئے کی جا رہی ہے دیکھیں گے کے طور پر بہت سے پہیلی ٹکڑے ٹکڑے کو فٹ ہونے کے بڑھنے تم وہاں میں رٹنا کرنا چاہتے ہیں کے طور پر. ایک اور لوپ ہو سکتا ہے دوبارہ سے اظہار. آپ کو پیشگی میں جانتے ہیں، "میں نے کچھ 10 بار کرنا چاہتے ہیں، " آپ کو صرف سکریچ بتا سکتے ہیں کچھ 10 گنا کرنے کے لئے. اور، دریں اثناء، ہم متغیر ہو سکتا ہے. تو یہاں ایک صوابدیدی ایک ہے، یہ اس صورت میں سنتری ہے اور یہ ایک بونڈر دورے ہے. ایک بار پھر، آپ کو یہ بہت قابل رسائی مل جائے گا آپ کو ایک بار کی طرف اشارہ اور کلک کرنے شروع. میں اپنے متغیر (ن) کا نام دیا، لیکن میں ہے اس میں کچھ کرنا چاہتے ہیں کے نام ہو سکتا ہے، اور میں، یہاں یہ قائم ہوں اس صوابدیدی مثال، صفر. اب خوش طرح ایک پروگرام دیکھ کر دنیا، سب مجبور نہیں ہے تو اصل میں کچھ کھول ایک سابق طالب علم بنا دیا ہے کہ. ، مجھے آگے بڑھیں اور کھول دو مثال کے طور پر، یہاں ایک، جس کے لئے میں پسند کروں گا ایک رضاکار ہے. ٹھیک ہے، کس طرح کی دور جانے about--. جی ہاں، پر آئے. آپ کا نام کیا ہے؟ یبی: یبی. DAVID J. MALAN: یبی، پر آئے. تو کیا تم نے کبھی ادا کیا ہے سے پہلے اس کھیل؟ یبی: نمبر DAVID J. MALAN: ٹھیک ہے. ڈیوڈ، آپ سے مل کر اچھا لگا. پر آئے. اور آپ کی پروگرامنگ ہے پس منظر، اگر کوئی ہے تو. یبی: میں نے کچھ C + + سیکھا ہے. DAVID J. MALAN: آپ کو کچھ C + + سیکھا ہے. اور آپ کے کھیل کیا ہے پس منظر کے کھیل؟ یبی: ایک بہت نہیں. DAVID J. MALAN: ٹھیک ہے، تو ہم اس لے لیں گے. تو یہاں کھیل ہی کھیل میں کام پر جا رہا ہے کہ کس طرح ہے. میں آگے جانے کے لئے جا رہا ہوں اور سبز پرچم پر کلک کریں جس یہاں سب سے اوپر دائیں ہے. کلاس میں اب آپ کے پیشرو یہاں آپ کو کچھ ہدایات دے دی ہے. اور صرف ایک لمحے میں، اس "خلائی شروع کرنے کے لئے ہے." لہذا آگے بڑھیں اور اسپیس بار مارا. کمپیوٹر کھیل: Pikachu کے. DAVID J. MALAN: اور مقصد کے لئے ہے وہاں دکھائے جانے والے تاثر کے طور پر، کھانا پکڑنے بائیں پر. اور [اشراوی] [کھیل موسیقی بجانے] DAVID J. MALAN: Aww، کے ساتھ ساتھ، کھیلنے کے لئے آپ کا شکریہ. ہم یہاں ایک چھوٹا سا ہے آپ کے لئے تحفہ کے الگ. ہم CS50 کشیدگی گیند ہے آپ کا انتخاب کرنا چاہتے ہیں. اچھا ٹھیک ہے، آپ سے مل کر. آنے والے اور چیلنج کے لئے آپ کا شکریہ. تو ہم، مزید کشیدگی گیندوں کی حوصلہ افزائی کرنے کی ایک اور مثال کے طور پر کرتے ہیں. ایک رضاکار؟ کس طرح کے بارے میں ٹھیک، یہاں سامنے. آپ کا نام کیا ہے؟ فلپ: فلپ. DAVID J. MALAN: فلپ. ، اپ فلپ چلو. تو، فلپ جا رہا ہے ایک کھیل کے ساتھ چیلنج اپنے پوروورتیوں کے ایک ہے کہ مسئلے کا حصہ صفر مقرر کے طور پر، لکھا آئیوی کی سب سے مشکل کھیل ہی کھیل میں ملاقات کی. اور ہم صرف ایک میں دیکھیں گے اس سے مراد ہے لمحے. فلپ، آپ سے مل کر اچھا لگا. آپ کے پس منظر کیا ہے؟ فلپ: کوڈنگ کے ایک بہت کچھ کیا. بھی، ایک چھوٹی سی گیمنگ کیا. DAVID J. MALAN: ٹھیک ہے. بھی، گیمنگ کی ایک بہت ہے. اور تم سے پہلے اس کھیل کو کھےلا ہے؟ فلپ: کوئی DAVID J. MALAN: تمام ٹھیک ہے، تو ہم یہاں جانا. میں آگے جانے کے لئے جا رہا ہوں اور سبز پرچم پر کلک کریں. [کھیل موسیقی] [موسیقی MC ہتوڑا، "آپ اس کو چھو نہیں سکتے"] فلپ: [اشراوی] DAVID J. MALAN: [اشراوی] فلپ: [اشراوی] [ہنس] [موسیقی MC ہتوڑا، "آپ اس کو چھو نہیں سکتے"] DAVID J. MALAN: [اشراوی] اس کے ذریعے ہل. فلپ: [اشراوی] DAVID J. MALAN: آگے بڑھو. [موسیقی MC ہتوڑا، "آپ اس کو چھو نہیں سکتے"] DAVID J. MALAN: ٹھیک ہے. مبارک ہو. [تالیاں] DAVID J. MALAN: ہم پوسٹ آن لائن ہے کہ بعد میں تو آپ کر سکتے ہیں کہ آج کل اس کے ساتھ کے طور پر اچھی طرح سے. پرنسٹن اس کے بعد، اگلے آتا ہے. تو اب اصل کارروائی دو شروع سے شروع کرنے کے لئے، تو بات کرنے کی، اور اصل تک تعمیر ہم ان کے خیالات کے کچھ کے علاوہ چڑھاو کر سکتے ہیں اور کچھ بھی حاصل اختتام کی طرف سے زیادہ پیچیدہ. میں یہاں جانے کے لئے جا رہا ہوں اور میں جا رہا ہوں آگے بڑھیں اور ایک نئی فائل بنانے کے لئے. تو پھر، مسئلہ سیٹ چلے جائیں گے ان اقدامات میں سے کچھ کے ذریعے آپ. لیکن، میں نے تمام چلیں تھا فائل مینو اور میں انہوں نے کہا کہ، "نئے" مائیکروسافٹ کی طرح اتنا کلام، یا اس طرح کسی بھی پروگرام. اور کی now-- آگے بڑھو اور ہم ایک لمحے پہلے "ہیلو دنیا" لاگو، لیکن کچھ ایک چھوٹا سا پیارا کرتے ہیں. میں واقعات کے لئے جانے کے لئے جا رہا ہوں. اور میں جب "کرنے جا رہا ہوں سبز پرچم پر کلک کیا. " اور پھر میں، استعمال کرنے کے لئے جا رہا ہوں ہم، ایک شاخ کہیں گے. تو میں نے ایک "" اگر شرط استعمال کرنے کے لئے جا رہا ہوں. اور کس طرح جیسے ہی میں قریب حاصل کرنے کے طور پر نوٹس اس کے لئے، اس کے ساتھ مل کر توڑ کرنے کے لئے چاہتا ہے. تو مجھے جانے دو اور یہ ایک دوسرے کے ساتھ تصاویر. اور اب میں دلچسپ کچھ کر سکتے ہیں. میں یہاں کے ذریعے سکرال، میں جا رہا ہوں بلاکس کی ایک پوری چڑھانے کو دیکھنے کے لئے. میں جاتے ہیں "ڈیٹا" - مجھے in-- زوم متغیر کے بارے میں کچھ ہے. میں جاتے ہیں "تحریک،" آپ کر سکتے ہیں بظاہر چیزوں کے ارد گرد کی باری ہے. میں "آپریٹر" کے پاس جاؤ تو - اوہ، یہ دلچسپ ہے میں ایک بے ترتیب تعداد منتخب کر سکتے ہیں. تو مجھے صرف ساتھ کچھ کرنا دو کچھ امکان، صرف اس وجہ سے. میں آگے جانے کے لئے جا رہا ہوں اور اس پہیلی ٹکڑا ھیںچیں، اس سے اس سے کم ہے بلاک، یہ صرف ہے تو "کہ ایک سے اس تعداد سے کم ہے؟" لیکن مجھے ایک مشکل کوڈ نمبر کی ضرورت نہیں ہے کیونکہ بہت بیکار ہو. تو میں نے اس ٹکڑے ھیںچیں کرنے کے لئے جا رہا ہوں یہاں، اور اس میں تصویر کس طرح محسوس، اور اب مجھے آگے جانا ہے اور اگر "کا کہنا ہے کہ تصادفی اٹھایا ہے کہ تعداد چھ سے کم، مندرجہ ذیل کرتے ہیں. " اب کیوں کم چھ؟ یہ مؤثر طریقے سے کیا امکان ہے صرف intuitively، مجھے دینے کے لئے جا رہے ہیں؟ کے بارے میں 50٪، ہے نا؟ اگر تصادفی لگتا ہے کہ تعداد 1 اور 10 کے درمیان، کم سے کم چھ ہے واضح طور پر یہ دو، میں سے ایک ہے، تین، چار، یا پانچ. اور تو ہے کہ مجھے ایک دینے جا رہا ہے کیا ہو رہا ہے کی 50٪ امکان؟ ویسے کی طرح کچھ کرتے ہیں یہ "آواز میانو ادا." اور نوٹس، پھر، پہیلی ٹکڑا اگنے اتنے لمبے وقت تک کے سائز کے طور پر میچ، فٹ ہونے کے لئے. اہم ہے کہ کیا ہے. مجھے سکریچ کرنے کے لئے جانے دو یہاں اور "کھیلیں." پر کلک کریں کچھ نہیں ہوتا. کہ ایک مسئلے ہے؟ نہیں، ضروری نہیں. یہ صرف ہے کہ ہو سکتا ہے بڑی تعداد منتخب کیا گیا تھا. تو اسے دوبارہ کرتے ہیں. کچھ بھی نہیں. [میانو] DAVID J. MALAN: وہاں ہے. [میانو] DAVID J. MALAN: ایک بار پھر. نمبر [meowing کی] DAVID J. MALAN: آپ نے تو کبھی، کورس کے، ایک کھیل کھےلا جہاں چیزیں تصادفی ہو رہا ہے، برے لوگوں کی طرح آ رہے ہیں یا نہیں ، سکرین پر آ یا چیزیں گرنے یا گر نہیں کر رہے ہیں، کہ صرف کچھ سپر کیونکہ اس طرح آسان ہو رہا ہے. ایک بے ترتیب تعداد اٹھاو، اور اگر یہ، کچھ قیمت سے کم ہے شاید ایسا ہو سکتا ہے یا ایسا. ہم شامل کر سکتے ہیں ایک شرط میں ہے کہ. کی کچھ مختلف کرتے ہیں. مجھے دور پھینک دیں. آپ کی طرف سے سامان سے چھٹکارا حاصل کر سکتے ہیں صرف بائیں کرنے کے لئے اس سے دور گھسیٹ اور جانے دے. مجھے آگے بڑھیں اور ایک ہمیشہ کے لیے بلاک کرتے ہیں اور بہت جلد پریشان کن کچھ کرنا. مجھے آگے بڑھیں اور "آواز میانو ادا." کہنا لیکن میں یہ بھی ہو جائے نہیں کرنا چاہتے پریشان، تو، مجھے اس بلاک پر قبضہ دو "، ایک سیکنڈ انتظار" اور نوٹس اس کے لئے کوئی زیادہ گنجائش نہیں ہے. لیکن اگر آپ کو قریب کافی اگر، یہ وہاں جانا چاہتا ہے. تو میں جاؤ اور یہ بلاک کو بھرنے کے لئے اضافہ. تو اب، یہ ایک لوپ ہے. [meowing کی] DAVID J. MALAN: میں ہوں لفظی ہمیشہ کے لئے یہ کر رہے. بار بار. یہ صرف قدرتی آواز نہیں ہے. مجھے آگے بڑھیں اور اس کو تبدیل کرتے ہیں نہ ایک دوسرے کے لئے، کرنے کے لئے دو سیکنڈ اور درج کریں مارا. سکریچ کے بارے میں اور اچھا کیا ہے آپ interactively میں پروگرام کر سکتا ہے. تبدیلی، شاید درج کریں یا کھیلیں مارا پھر، اور یہ صرف جا رکھنے کے گا. ٹھیک ہے، اب ہم کیوں نہیں کرتے کچھ ایک چھوٹا سا پیارا؟ شروع سے سب کچھ کرنے کے بجائے، مجھے آگے بڑھیں اور ایک پیشگی کھول ، میں بیکڈ پہلے کہ، ایک بنا دیا "پالتو بلی." کہا جاتا اور ہم تمام پوسٹ کریں گے آن لائن ان فائلوں، اور مسئلہ سیٹ صفر آپ کو بتائے گا کس طرح ان تک رسائی اور ان کو کھولنے کے لئے. اور نوٹس، یہ بہت آسان ہے. لیکن پہلے میں، میں نے پکڑ لیا ہے لگ رہے ہو ایک "ہمیشہ کے لئے" بلاک، تو میں ایک لوپ ہے. اور پھر میں نے ایک "" اگر شرط ہے. میں ایک بولین اظہار ہے. انگریزی میں تو، صرف میں glancing اس، آپ کو کبھی نہیں ہے خاص طور پر اگر صرف intuitively، پہلے پروگرام، کیا ایسا کرنے کے لیے اس پروگرام کو جا رہا ہے؟ [سامعین چہچہانا] DAVID J. MALAN: آپ کو بلی پالتو جانوروں کی تو، بلی حق، میانو جا رہا ہے؟ کیونکہ "ہمیشہ unchecking کی" ماؤس پوائنٹر بلی کو چھونے. تو واضح ہو، اور میں نے نہیں کہا اس سے پہلے، ان پہیلی کے تمام ٹکڑے ٹکڑے اور سکرپٹ کہ ہم نے ان میں مل گئے ہیں تو بات کرنے کی، ایک سکرپٹ کے ساتھ مترادف ہے پروگرام، واقعی، اس بلی سے تعلق رکھتا ہے. اور وجہ نوٹس کیونکہ is-- یہاں اسی بلی پر روشنی ڈالی ہے کہ کس طرح، یہاں آپ کو ایک بنا سکتے ہیں دوسری بلی یا کتے یا واقعی کچھ آپ گراف چاہتے ہیں. تم کچھ درآمد کر سکتے ہیں فوٹوشاپ، یا اس طرح کی طرف سے، اور اگر آپ کو کچھ ضم ایک منصوبے کے لئے بنانے کے لئے چاہتے ہیں. اور آپ کو تلاش کر لیں گے کیا، آخر میں، آپ کو ہے پہیلی کو شامل، اسکرپٹ شامل کر سکتے ہیں انفرادی حروف کو ٹکڑے ٹکڑے،. تو ان سب کا تعلق یہ خاص طور پر بلی. تو اب میں آگے بڑھو اور کھیلتے ہیں اس پروگرام کے، کچھ بھی نہیں ہو رہا ہے. لیکن یہ چل رہا ہے. پروگرام، اس ہمیشہ کے لئے لوپ میں ہے قسم کی کیا ہو کرنے کے لئے انتظار کر رہے ہیں؟ [سامعین چہچہانا] DAVID J. MALAN: بلی پالتو جانور کے لئے. تو میں him-- کی طرف اپنے ماؤس منتقل [meowing کی] DAVID J. MALAN: تو اب میں بلی petting کو ہوں. دریں اثناء، ہم ایک ڈبل شاخ کر سکتے ہیں. مجھے آگے بڑھیں اور کھول دو اپ بلی پالتو جانوروں کی نہیں ہے. ہم اس کے ساتھ ساتھ آن لائن پوسٹ کریں گے. یہ ایک چھوٹا سا زیادہ ہے پیچیدہ، لیکن کہے بغیر آپ شاید اندازہ لگا سکتے ہیں کیا ہونے جا رہا ہے. [meowing کی] DAVID J. MALAN: بلی ہے meowing کی، گرینڈ پرانے وقت. لیکن اس پروگرام کے کورس کی ہے کہا "بلی پالتو جانوروں کی نہیں،" تو واضح طور پر، میں نے بلی پالتو جانور کے لئے چاہتے ہیں. [گرجنے] DAVID J. MALAN: بلی پالتو جانوروں کریں. اب، ایک نظر ڈالیں یہاں ایک اور مثال کے طور پر. یہ ایک بلایا جائے گا "ہیلو، ہیلو، ہیلو،" وجوہات کی بنا پر کیونکہ، واضح ہو جائے گا جیسے ہی میں اس thing-- چلانے کے طور پر [مہر بونک] DAVID J. MALAN: کے لئے بہت آسان پریشان سکریچ پروگرام لکھنے. [مہر بونک] DAVID J. MALAN: اب ہم نہیں جائیں گے ان میں سے سب کے ساتھ عظیم تفصیل میں، لیکن ایک ہے محسوس یہاں نئی ​​خصوصیات کے جوڑے. نامی ایک متغیر، "خاموش،" نہیں ہے اور اس کے بعد کے حالات کی ایک گروپ ہے. اور اب کے لئے، مجھے صرف یہ کہہ کر آپ کو تنگ یہ آدمی بہت پریشان ہو جاتا ہے کہ، میں اسپیس بار مار کر سکتے ہیں اور وہ رک جاتا ہے. کردار کی طرف سے ادا کیا جا رہا ہے کیونکہ مندرجہ ذیل کے طور پر ان دونوں کے سکرپٹ ہے. ان میں سے ایک کر رہا ہے ہر چند سیکنڈ بونک. دیگر صرف ایک انتظار کر رہا ہے میرے لئے اسپیس بار کو نشانہ بنانے. اور میں اسپیس بار مارا کرتے ہیں تو، اسے تبدیل کرنے جا رہا ہے اس متغیر کی حالت، قیمت اس متغیر کے، کہ بظاہر ہے کہا جاتا ہے "خاموش،" میں نے فون نہیں کیا (ن) کی طرح بورنگ کچھ، میں "خاموش"، یہ ایک انگریزی لفظ کہا 1 1 0 یا 0 سے. سچ سے سچ کو غلط یا جھوٹے. اور تو آپ اصل میں کر سکتے ہیں ، اب دیکھتے ہیں کہ آپ دو سکرپٹ ہو سکتا ہے، دو پروگراموں، بیک وقت چل رہا ہے اور ان دونوں بیٹھے کیا جا سکتا ہے ایک لوپ میں کچھ کر. انسانی ایسا کرنے کے لئے انتظار کر رہا ہے اسپیس بار مارنے کی طرح کچھ. [مہر بونک] DAVID J. MALAN: اور اب وہ پھر اس کے راستے پر ہے. [مہر بونک] DAVID J. MALAN: اور تو کیا ہم ان مثالوں کے ساتھ کیا ہو سکتا ہے؟ ویسے، چلو آگے بڑھو اور ایک کرتے ہیں بھیڑوں کی گنتی کے ساتھ مثال کے طور پر. ہم یہاں لائنوں کے ساتھ ساتھ یہ جاری رکھیں گے of-- کی بھیڑ مثال کھول. اور نوٹس، بہت پہلے کی طرح، یہ ایک، شکر ہے، تھوڑا کم پریشان کن ہے. میں یہاں کھیل کو مارا ایک بار ارے نہیں، یہ پریشان کن ہے. انہوں نے کہا کہ Baa کی جا رہی ہے کچھ امکانات کے ساتھ. پھر یہ کھیلتے ہیں. [SHEEP BLEETING] DAVID J. MALAN: فرق صرف اتنا ہے ہم، تو بات کرنے کی، کپڑے تبدیل کر دیا ہے اور ہم halving اور کہہ رہے ہیں کہ اصل تعداد کیا ہے. ویسے آگے بڑھو اور اس ایک قدم آگے لے. اور میرے ساتھ آپ کو تنگ کرتے ہیں یہاں ایک اور خصوصیت. چلو آگے بڑھو اور کھول دو پروگرام موضوعات بلایا. آپ کو ایک کر سکتے ہیں بہت پسند سپرائٹ، ایک سے زیادہ اسکرپٹ ہونے، آپ دو sprites، ایک پرندوں میں کر سکتے ہیں ایک بلی، ہر ایک ان کے اپنے سکرپٹ ہونے. اور ان میں سے ہر ایک کر سکتے ہیں ایک ہی وقت میں کام. کیا آپ نے کبھی سنا ہے لفظ "multithreading" ایک کمپیوٹر "multithreaded" کا مطلب ہے یہ، ایک بار میں ایک سے زیادہ کام کر سکتے ہیں اور، یقینا، تو سکریچ کر سکتے ہیں. اور اب پرندوں کی قسم ہے گونگا ہے توجہ. یہ صرف تصادفی چیزوں کر رہی ہے، سکرین شیخی. واضح طور پر بلی پروگرام کیا گیا ہے قسم کی تلاش میں صلاحیتوں ہے کرنے کے لئے برڈ کیونکہ گھر میں وہ ہمیشہ اس کی طرف اشارہ ہے. آخر میں جب تک، وہ اصل برڈ پالے. تو میں تفصیلات پر رہنے نہیں کرے گا یہاں، لیکن آپ کر سکتے ہیں اس قسم کی اسی سائز جھلک، کچھ حالات "اگر"، کچھ متغیر، شاید کچھ loops کے، ہیں بالآخر ایک ہی بات کر. اب مجھے آگے بڑھیں اور کھول دو مکمل طور پر کچھ اور، خاص طور پر، آپ میں سے کچھ چڑھانا زیادہ آرام دہ ان، آپ اصل میں اس کے ساتھ کیا کر سکتے ہیں. میں آگے جانے کے لئے جا رہا ہوں اور یہاں بٹن کھول. اور یہ ایک سپر ہے سادہ بظاہر پروگرام، لیکن کیا ہوتا ہے دیکھتے ہیں میں ... دیکھو تو کیا میں نے اس کے اس ورژن کھولنے ہوتا ہے جب، یہاں براؤزر، scratch.mit.edu میں. اور میں اس بڑے سرخ کلک کریں جب بٹن، نوٹس کیا ہوتا ہے. تو یہاں کیا چل رہا ہے؟ بہت زیادہ پیچیدگی وہاں اصل ہڈ کے نیچے جا رہا، میں بھی لاگو کیا ہے اگرچہ اس، یا واضح طور سے، ڈین بریڈلی تو صرف یہ لاگو ہے. انہوں نے کہا کہ ایک اپنی مرضی کے سکریچ پہیلی ڈیزائن کیا گیا ہے ایک سکریچ توسیع کے طور پر جانا جاتا ہے ٹکڑا،، وہ ٹوگل یہ کہا جاتا ہے. اور کیا ٹوگل کرتا ہے بھیجتا ہے انٹرنیٹ پر ایک پیغام. اور اس پیغام کو خود تھوڑا خفیہ لگ رہا. لیکن یہ بھی، تمہیں مدت کے اختتام کی طرف سے سمجھ. وہ اصل میں بھیجنے کا پیغام اس طرح کچھ لگتا. یہ صرف متن ہے. خفیہ. آپ کو وقت کی طرف سے یہ سمجھ جائے گا ہم اس مسئلے کو سات مقرر حاصل. یہ صرف ایک متن پیغام بھیج رہا ہے ایک سرور سے انٹرنیٹ پر. اور جو سرور، بالآخر، ہے اس کی روشنی بلب، سے بات جس ان فینسی روشنی بلب میں سے ایک ہے اس میں ہے کہ، خود، بات کر رہا ہے یہاں کے نیٹ ورک میں وائی فائی کرنے کے لئے، جہاں ایک مقامی آلہ نیچے یہاں اور، آخر میں، یہ اصل میں ہے پر اور اس روشنی کا رخ. لیکن ہم زیادہ کر سکتے ہیں اب بھی دلچسپ چیزیں. ڈین نے ہمارے لئے کیا کیا محسوس. انہوں نے کہا کہ، میں سے ہر ایک سے زیادہ sprites بنایا جس میں ایک کلک کے لئے انتظار کر رہے ایک سکرپٹ ہے. میں ریڈ کلک کریں، یہ سرخ ہو جاتا ہے. میں نیلے رنگ ملتا ہے، اس blueish جاتا ہے. سبز، پیلے، اورینج. اور یہ سب کی طرف سے ہو رہا ہے انٹرنیٹ پر راستے باہر جا، یہاں واپس لائٹ بلب، اور بند. اور تم it-- یقین کر سکتے ہیں اور اگر یہ ہے تو سب سے زیادہ پیچیدہ سکریچ کی شاید ایک منصوبوں کسی implemented-- ہے وہ ایک دن میں، جانبداری میں، اس نے کیا کیا. اور یہ کہ ہم نیچے پھینک دیا چیلنج تھا ڈین ہم، ثنائی کے بلب ہے دیکھا ہم نے شروع کی ہے، کس طرح ہم ان کو جمع کر سکتے ہیں؟ اور، یقینا، یہ بالکل ہے اس کمرے میں کچھ کسی سمسٹر کے end-- وہ ہے کی طرف سے کر سکتے ہیں کا استعمال کرتے ہوئے reimplemented ثنائی بلب تھا کہ ایک ہی انٹرفیس بدھ کو اپنے رکن کی پر. اب کہ، میں واقعی میں تو یہاں پر پلس کلک، ہم ایک، دو، تین ہے. میں 16 مارا اور ایک ہے کہ تبدیل کر سکتے ہیں. 128، اور تو آگے. اکیلے کہ اب تو اور آپ کے دماغ اڑا دیا، آپ چیزوں سے کہیں زیادہ قابل رسائی کر سکتے ہیں، یقینی طور پر کسی بھی ہارڈ ویئر شامل نہیں. سکرین پر ہی بس چیزیں. اور، یقینا، جو سب سے زیادہ طالب علموں کو کھیل کے کچھ قسم ہے کر ختم، فنکارانہ کام کے کچھ ٹکڑے، یا انٹرایکٹو حرکت پذیری کے کچھ قسم کی. اور میں سے ایک کا کہنا ہے کہ ہماری پسندیدہ اس سے ایک رہا ہے. اور میں نے تو سوچا تھا کہ ہم روشنی دھیما کر سکتے، ہم نے اس کے فائنل میں ایک جھلک لے لیں گے آخر میں سکریچ منصوبے. لیکن آپ کے ذہن میں کیا رکھنا چاہئے گا میں، ایک آخری تفصیل کے ساتھ آپ کو تنگ کر سکتے ہیں sectioning اگلے ہفتے شروع ہو جائے گا. دفتر کے اوقات اگلے ہفتے شروع ہو جائے گا. مسئلہ صفر پوسٹ کیا جائے گا مقرر CS50.harvard.edu آج کے بعد. اور آپ کو مبارک باد دی جائے گا مسئلہ سیٹ صفر میں CS50 اپنے Zamyla چین، جو زیادہ تر ہمارے walkthroughs کے کی ہدایت دیتا ہے. یہ ایمبیڈڈ ویڈیوز ہیں مسئلہ سیٹ میں کہ ایک بہت کے ذریعے آپ کے ہاتھ کریں گے بہت سے کے ذریعے ابتدائی سیٹ اپ اور کی ممکن ڈیزائن کے فیصلوں کی. آپ نے تو کبھی جذبات تھا ہوم ورک تفویض اٹھا جب اور سوچ، کہاں سے شروع کروں؟ وہ آپ کے لئے اس کا جواب ہو جائے گا. اور اب، ایک حتمی پروگرام اپنے پوروورتیوں کے ایک سے سوال کے جواب میں "فاکس کیا کہتا ہے؟" [موسیقی YLVIS، "فاکس میں کیا کہتا ہے؟] YLVIS: (گانا) کتے میں Woof جاتا ہے. بلی میانو جاتا ہے. برڈ ٹویٹ جاتا ہے اور ماؤس ککیانا جاتا ہے. گائے راںبنا جاتا ہے. مینڈک croak جاتا ہے. اور ہاتھی توت جاتا ہے. بتھ کوےک اور مچھلی blub جاؤ کہنا. اور مہر، وو وو وو جاتا ہے لیکن کوئی نہیں جانتا کہ ایک آواز ہے، لومڑی کیا کہتا ہے؟ اور DAVID J. MALAN: یہ CS50 کے لئے ہے. ہم پر آپ دیکھیں گے دن اور پیر پر پہیلی. [تالیاں] [موسیقی YLVIS، "فاکس کہتا ہے کیا؟"] راوی: اور اب گہری Daven Farnham کی طرف سے خیالات،. میں مارا گیا آج ایک فون کی کتاب کے ساتھ کا سامنا. میں ہوں، بردوست گھر آن لائن دیکھ.