[موسیقی بجانے] ANDI پینگ: یہ CS50 ہے، اور سیکشن کے دو ہفتے کے لئے خوش آمدید. یہ اصل میں ہے جبکہ ہفتے اصل میں ہمارے class-- کے دو، پہلے ہفتے ہم سیکشن پڑا ہے. ہاتھوں کے دکھائیں، آپ کو سب سے کتنے گزشتہ ہفتے سپر سیکشن میں آیا تھا؟ ٹھیک ہے، یہ ٹھیک ہے. ٹھیک ہے. کس طرح تم میں سے بہت دیکھا سپر سیکشن گزشتہ ہفتے؟ ٹھیک ہے. اور تم لوگ ٹھیک کیا مسئلہ پر ایک مقرر؟ لہذا میں ہم ہے کہ اسے لینے کے لئے جا رہا ہوں واقعی ذہین بچوں کا ایک گروپ اس کلاس اور چیزوں میں ٹھیک ہو جائے گا. ٹھیک ہے. تو first-- سب سے پہلے، ہم صرف مختصر طور پر جا رہے ہیں آج کے ایجنڈے سے زیادہ جانا. ہم کورس لاجسٹک کے بارے میں بات کریں گے. تم میں سے ایک بہت شاید کے بارے میں سوالات ہیں، کس طرح اس کورس میں چلانے چیزیں. ہم نے ان کا جواب دونگا. ہم مختصر طور پر جا رہے ہیں کیس میں loops سے زیادہ جانا تم لوگوں میں سے کسی کے سپر سیکشن یاد. ہم ASCII میپنگ کے بارے میں بات کریں گے. ہم arrays کے بارے میں بات کریں گے، افعال، کمانڈ لائن کے دلائل. اور آخر میں، کیا تم لوگ شاید سب واقعی کے بارے میں جاننے کے لئے یہاں بننا چاہتا ہوں، آپ pset2 ہے. ہم نے کچھ اچھا گر پڑے گا ایسا کرنے کے لئے کس طرح کے لئے اور تجاویز. ٹھیک ہے. اس کے علاوہ، دوسری بات، ہم یہاں کینڈی کے بہت سے. کینڈی پسند کرتا ہے جو کوئی بھی، صرف یہاں آنے. کچھ پر قبضہ. میں ایک گروپ ہے. ہم دفتر میں ایک ٹن ہے. میں واقعی نہیں کرنا چاہتے سارا دن کینڈی کھانے کے لئے. تم لوگ، تمام کینڈی کھانا چاہیئے مجھے تم لوگوں کے لئے اسے یہاں لایا کیونکہ. بس کینڈی کھا. ہر حصے کینڈی ہو جائے گا. تو سب سے پہلے، میں کون ہوں؟ میرا نام Andi کی پینگ ہے. میں ییل میں یہاں CS50 کے سر ٹیی ہوں. اور اس کے علاوہ میں کہ، میں نے بھی be-- گا کسی کو بھی آپ چلانے like-- گے تو دوست، اپنے کندھے پر رونے کے لئے. تو اپنے pset کی وجہ سے پہلے رات، آپ، کیا ہو رہا ہے کوئی اندازہ نہیں ہے مجھے مارو. ہم وغیرہ، ایک دوسرے کے ساتھ رحم کریں گے. صرف میں ایک کے طور پر یہاں ہوں جانتے ہیں کہ فرنٹ لائن کے طور پر آپ کے لئے وسائل مدد کرنے میں آپ لوگوں کو کس طرح پتہ CS50 میں اور اس سے باہر مسائل کو حل کرنے. میرا ای میل andi.peng@yale.edu ہے. میں نے بھی ایک فرد باہر بھیج دیں گے اس میں اپنے فون نمبر کے ساتھ ای میل تاکہ ہر کوئی انٹرنیٹ میرا فون نمبر دیکھ سکتے ہیں. کسی بھی وقت مجھے فون کرنے کے لئے بلا جھجھک. سنجیدگی سے، میرا فون ہے عام طور پر اپنے ہاتھ کے ساتھ منسلک. میں جواب نہیں کر سکتے ہیں ایک جوڑے منٹ کے اندر اندر. میں نے ایک جوڑے گھنٹے کے اندر جواب نہیں کر سکتے ہیں. لیکن میں تو آپ کو ضمانت لے سکتے ہیں تم نے مجھے بلایا تو آپ،، مجھے ای میل مجھے متن، میں 24 گھنٹے کے اندر جواب دے گا. اکثر، میں نے پہلے جواب دیں گے مجھے سمجھنے کی وجہ سے، کہ سب کچھ مسائل ہے کہ، اور آپ کو اپنے جوابات چاہتے ہیں بہت تیزی سے جواب دیا جائے. تاہم، آپ کو کال کریں تو مجھے 30 منٹ پہلے وجہ جمعرات ہے کہ ٹکڑا ، Andi کی، میری مدد کی طرح ہو رات، مجھے دے سکتے ہیں started-- نہیں ہے تم نے اس کے کندھے پر رونا. لیکن اس کے بارے میں سوچنے کے لئے وقت ہو سکتا ہے کہ اگلی بار ایسا نہیں کرنے کے لئے کس طرح. ٹھیک ہے. افوہ. میں کس طرح واپس جاتے ہو؟ ہم وہاں جا رہے. تو اس کورس میں، ہم نے ایک ہے سب کے لئے حمایت کے ٹن. صرف اس کے علاوہ یہاں حصوں، جس میں آپ ہر ہفتے 90 خرچ کرنے کے لئے حاصل میرے ساتھ بہت اچھا منٹ، ہم بھی دفتر کے اوقات ہیں. آپ میں سے کتنے لوگوں کی پہلے سے ہی ہے مدد کے لئے دفتر کے اوقات کے لئے کیا گیا؟ عظیم. یہ، کو دیکھنے کے لئے بہت اچھا ہے کیونکہ ہم 45 سے زائد TAS اور کیس کے عملے ہے یہاں ہیں اس کورس کے لئے تربیت آپ کی psets کے ساتھ تم لوگوں کی مدد کے لئے. سوموار وہ چیتی میں منعقد کر رہے ہیں یہاں 17 ہل ہاؤس میں کلاس روم ییل میں. منگل اور جمعرات، وہ دارالعوام میں منعقد کر رہے ہیں. بہت 11:00 ہر دن 8:00. میں آو، باہر آئے. کوئی مسئلہ، کوئی مسئلے صرف میں آئے، اور پھر ہم اس کے ساتھ آپ کی مدد کریں گے. دوم، دفتری اوقات کے علاوہ میں اور حصوں، ہم بھی شارٹس ہے. کبھی کسی نے کے ایک جوڑے کو دیکھا ہے ویڈیوز شارٹس یا walkthroughs ویب سائٹ پر؟ ٹھیک ہے. تو وہ واقعی، واقعی مددگار ثابت ہو. ہمارا پیارا ہارورڈ پیداوار اس اسکول پر وہاں ٹیم شمال میں، وہ فلمایا اور پیداوار ہے ان ناقابل اعتماد واک تھرو ویڈیوز. وہ آپ کے ذریعے قدم بہ قدم لے لیں گے کس طرح ایک مسئلہ کو حل کرنے کے بارے میں جانا. اکثر، آپ کے بارے میں الجھن میں کر رہے ہیں تو ایک سادہ تصور، ایک واحد تصور، ہم شاید ہے کیونکہ، ایک نظر ڈالیں کہیں ہماری ویب سائٹ پر اس پر ایک مختصر. اور یہ عام طور پر ایک عظیم وسائل آپ سب سے پہلے جب تلاش کرنے کے لئے ایک مسئلے سے نمٹنے کے لئے کس طرح پر کھو. تیسری، ہم بھی ہیں study50 اور reference50. تو 50 کا مطالعہ ویب سائٹ صرف ایک لنک ہے. یہ مجھے لگتا ہے کہ، ہے، study.cs50.net یا اس طرح کچھ. صرف اس گوگل. ہم تیار سلائڈ کے بہت سے ہیں. ہم شارٹس کے بہت سے ہیں اور تمام مرتب walkthroughs-- چیزیں بہت اچھا اور سب لوگ آپ کے لئے صاف کے ذریعے براؤز کرنے کے لئے، کسی بھی تصورات دیکھیں آپ کے بارے میں الجھن میں ہیں. شاید یہ احاطہ کرتا کیا جائے گا وہاں study50 میں ختم. اسی طرح Reference50--. ہم مختلف نوٹوں کی ایک بہت کچھ کرنا پڑے آپ کو ضائع کرنے کے لئے آسانی سے دستیاب. اور آخر میں، ہم نے کیا ہے ہے CS50 بحث بلایا، جس میں ایک فورم، تو رات سے پہلے آپ کے مسائل کر رہے ہیں، کا کہنا ہے کہ، آپ سے ایک سوال ہے. بحث CS50 میں لاگ ان کریں. آپ کے سوال پوسٹ. اور hundreds-- کے بعد ایک ساتھیوں کے شاید، thousands-- آن لائن اس کلاس لینے میں لاگ ان کریں گے. اور شاید کوئی حاصل کر سکتے ہیں ایک ٹی اے سے پہلے آپ کا جواب. یہ بنیادی طور پر صرف ایک ہے آن لائن فورم ہے کہ ہم کر سکتے ہیں سب ہمارے مسائل کے بارے میں بات کرنے کے لئے استعمال. اچھا ہے. ٹھیک ہے. تو مسئلہ سیٹ. ہم میں حق کے بارے میں ہیں مسئلہ کی موٹی دو مقرر. ہم میں سے بہت پہلے سے ہی ہے مسئلہ کے ذریعے جدوجہد کی ایک سیٹ. ہم نے پہلے ہی شاید جانتے ہیں کہ انتظار کر رہے ہیں گزشتہ رات اپنے pset ایسا کرنے کے لئے CS50 میں ایسا کرنے سے ہوشیار بات نہیں ہے. تجاویز اور بنیادی طور پر کے لئے تجاویز کامیابی پوری رپورٹ پڑھ رہے ہیں. تم میں سے کتنے پہلے سے ہی ہے 2 pset کے لئے رپورٹ کو پڑھا ہے؟ ٹھیک ہے. کہ ایک ٹھوس رقم ہے. میں تم لوگوں کو شاید تسلیم کیا ہے جانتے ہیں اب چشمی واقعی لمبے ہوتے ہیں. وہ واقعی طویل، واقعی ہیں. یہ ہر لائن پڑھنے کے لئے بہت مشکل ہے لفظ کی طرف سے احتیاط سے لفظ کے. تم بس جہاں ملائی کرنا چاہتے ہیں یہ آپ کو کچھ کرنا بتاتا ہے. میں آپ کو اس بات کی ضمانت سکتا ہے، ایسا نہیں ہے. آپ یہ کرتے ہیں، آپ کو شاید ہو کہیں یاد کرنے جا رہا جہاں یہ آپ کو بتاتا ہے کس طرح ایک مسئلہ شروع کرنے کے لئے یا اس کے نام پر کیا آپ کو بتاتا آپ کا مسئلہ یا یہ آپ کو بتاتا ہے، شاید یہ بہترین طریقہ ہے آپ کا مسئلہ کر شروع کرنے. اور پھر آپ کو کھو جائے گا. آپ کو آپ کے پڑھنے کے لئے کی کوشش کرتے ہیں نصف کے ذریعے رپورٹ، اہم کی ایک بہت تم نہیں ہو کہ میں information-- واقعی تک رسائی حاصل کرنے کے قابل ہو جائے کرنے کے لئے جا. تو پوری رپورٹ پڑھیں. پوری رپورٹ کو پڑھنے کے لئے کی کوشش کریں آپ کے حصے کے آنے سے پہلے، پھر، کیونکہ جب ہم pset کے بارے میں بات، ہم آپ کو ایک خیال ہو سکتا ہے کیا ہو رہا ہے کے. دوم، یہ ایک تصور ہے میں ریفرنس کے لئے چاہوں گا کہ کورس سمسٹر بھر میں ایک بہت. لیکن بنیادی طور پر، صحیح، نصف ہم سے ملنے؟ مجھے، آپ کے ضلعی اور جیسن کے طور پر کورس کے طور پر آپ کے پروفیسر کے طور پر مینیجر اور Scaz اور داؤد اپنے پروفیسر اور کے تمام کے طور اس کورس میں دوسرے خوبصورت TAS، اس course-- میں معاونین ہم پوری کوشش کریں گے آپ کی مقرر کردہ ہیں اس بات کا یقین کرنے کے لئے اس کورس میں کامیاب ہونے کے لئے. ہم سیکشن کریں گے. ہم دفتر کے اوقات منعقد کریں گے. ہم آپ کے فون کا جواب دے گا کالز،، آپ کے ای میلز کا جواب بنانے کے لئے ہم کر سکتے ہیں سب کچھ یقینی بنائیں کہ آپ کے سوالات کا جواب رہے ہیں. تاہم، بہت ہماری مدد. نصف ہم سے ملنے. آپ دفتری اوقات میں آتے ہیں نہیں، کے حصے میں نہیں گئے تھے کوئی ہے، لیکچر دیکھا خیال میری مدد، کی طرح ہو، کیا ہو رہا ہے. مجھے اچھی طرح سے، میں معافی چاہتا ہوں، کی طرح ہو جائے کرنے کے لئے جا رہا ہوں. یہ قرضے دینے کے لئے وقت ہو سکتا ہے کہ کندھے، پر رونے کے لئے مجھے یقین نہیں ہوں کیونکہ میں آپ کی مدد کرنے کے لئے کیا کر سکتے ہیں آپ کم از کم مدد کرنے کی کوشش نہیں کرتے ہیں تو اپنے آغاز میں تھوڑا سا. نصف ہم سے ملنے. تم جانتے ہو، براہ مہربانی جواب حاصل کرنے کے لئے تیار مواد میں مشغول کرنے کے لئے تیار. یہ اتنا چیزیں بناتا ہے ملوث سب کے لئے آسان. جی ہاں، اس سے بہت زیادہ ہے. گریڈنگ. تو نصاب پر، یہ خوبصورت ہے میں گہرائی سے ہم کس طرح گریڈ کے بارے میں. لیکن بنیادی طور پر، خرابی اس میں آپ کی گریڈ 50٪ کی psets، ہو جائے گا جس کہ ہے کیونکہ، خوبصورت ہے جہاں آپ کو وسیع خرچ کر رہے ہیں آپ کورس وقت کی اکثریت. 40٪ QUIZZES، اور آپ حتمی منصوبے 10 فیصد ہو جائے گا. بھر دو quizzes ہے ہو جائے گا سمسٹر کے کورس. میں اوقات اور تاریخوں ہیں لگتا ہے بھی نصاب پر درج. طریقہ ہے کہ ہم آپ کی psets گریڈنگ جائے ہم بنیادی طور پر چار ہے ہم ہر جماعت کو تفویض ہے کہ اقدار. ہم گنجائش کی ایک قیمت ہے، درست، ڈیزائن، اور سٹائل. آپ کو دیکھ کر تو جیسا کہ کی طرح ہے ہماری کی psets حساب کے لئے فارمولا. تین ہم سب سے زیادہ دے وزن، درست کرنے کے لئے واضح طور پر اپنے کوچ کی وجہ سے مقدمات کے لئے جانچ کی جائے چاہئے ہم چاہتے ہیں کہ اس کے لئے ٹیسٹ کرنے کے لئے. تم لوگوں کو سب آپ کے اختیار میں check50. یہ ایک بہت ہی مفید تقریب ہے تم لوگ کر سکتے ہیں ہمارے سرور پر آپ کے کوڈ کو اپ لوڈ، جہاں ہم آپ کے لئے جانچ پڑتال کرے گا. اور آپ ان لوگوں کو دیکھا ہے frowny چہروں، مسکراتے چہرے. انہوں نے سچ میں، واقعی مددگار ثابت ہو. نہیں کرتے ہیں براہ مہربانی کی کوشش کرتا ہے پسند ہے کہ طالب علم ان کے تمام جوابات میں hardcode کرنے. میں یقینی طور پر ایک pset جہاں دیکھا ہے کوئی check50 کی تمام اقدار دیکھا اور وہ صرف مشکل تو in-- کوڈت یہ تعداد اس تعداد باہر پرنٹ. اس نمبر تو، اس نمبر باہر پرنٹ. ایسا مت کرو. یہاں تک کہ اگرچہ تکنیکی check50، درست ہے حل کرنے کے اپنے راستے مسئلہ درست نہیں ہے. تو کفایت check50 استعمال. بلکہ اس بات کو یقینی بنانے کے آپ یہ کام ہے کہ کس طرح سمجھ، پروگرام کام کر رہا ہے check50 کے علاوہ میں، ہم ہر امتحان نہیں کر سکتے کیونکہ check50 کی ممکنہ صورت. ہم نے ان میں سے کچھ کی جانچ کیا جائے گا. ڈیزائن بنیادی طور پر، کس طرح ہے آپ کے کوڈ کو اچھی طرح ڈیزائن کیا گیا ہے؟ آپ کاپی پیسٹ سے زیادہ ہیں، تو کوڈ بہت، کئی بار کی لائنیں. ہو سکتا ہے کہ آپ کو کافی نہیں ہے آپ کے کوڈ میں سب سے بہترین ڈیزائن. شاید یہ اس لوپ شامل کرنے کا وقت ہے. بنیادی طور پر، یہاں یہ صرف تمام ہے اپنے کوڈ کرنے کی کوشش کر کے بارے میں، کے طور پر مؤثر طریقے سے آپ کے کوڈ لکھنے کی کوشش کر ممکن ہے کہ تا کہ آپ پروگرام چلاتے ہیں کے طور پر جتنی جلدی ممکن ہو. آخر میں، ہم سٹائل ہے. تو سٹائل ایک کی طرح ہے صوابدیدی، ساپیکش مدت. میرے خیال میں ہمیں سرکاری طور پر جانتے ہیں CS50 کے لئے ایک سٹائل 50 گائیڈ، یہ اوہ، آپ کو بتاتا ہے جہاں آپ یہاں ایک جگہ ہونا چاہئے. تم ہونا چاہئے کی شکل کی قسم آپ کے کوڈ کو اس طرح. آپ کو اس طرح چیزوں کے نام ہونا چاہئے. مجھے سچ میں، SE فی پرواہ نہیں، کس طرح آپ اپنے کوڈ سٹائل کرنے کے لئے منتخب بس کے طور پر طویل عرصے سے آپ مسلسل رہنے کے طور پر. مثال کے طور پر، آپ چاہیں تو اپنے چار کے بعد ایک جگہ چھوڑ اپنے چار لوپ سے پہلے، صرف ہر وقت ایسا. قسم کا ایسا نہ کرو. یہ دوسرے اوقات ایسا نہ کرو. آپ گھوبگھرالی رکھنے کے لئے چاہتے ہیں، تو منحنی خطوط وحدانی کی جگہ ایک خاص طریقے، صرف ہمیشہ اسے اس طرح کرتے ہیں. قسم کی کہیں ایسا نہ کرو یہاں اور کہیں نہیں. ہم گریڈنگ کر رہے ہیں تو، یہ واقعی مشکل ہے مجھے کوئی اندازہ نہیں ہے کہ کس طرح ہے تو آپ، اپنے کوڈ فارمیٹنگ کر رہے ہیں چیزوں ویکی اور جگہ سے باہر ہیں. آپ کو صرف مسلسل رکھنے کے، تو یہ ہے زیادہ سے زیادہ کے طور پر میرے لئے بہت آسان اپنے کوڈ کو پڑھنے کے قابل ہو جائے. یہ ایک طالب علم کے طور پر آپ کے لئے بہت آسان ہے آپ کے کوڈ کے ذریعے تلاش کرنے کے قابل ہو جائے اور اس کے ساتھ غلط کیا ہے دیکھنے کے مسائل موجود ہے کیوں یہ سلیش. انداز سب سے آسان چیزیں میں سے ایک ہے تم لوگوں کو مکمل سکور حاصل کرنے کے لئے کیا کر سکتے ہیں. بنیادی طور پر، آپ کو صرف تو، پرواہ ہے آپ کی توجہ کے پانچ منٹ کی ادائیگی ہر ہفتے آپ کے کوڈ میں، آپ کو کرنا چاہئے مکمل سٹائل پوائنٹس حاصل ہو. آخر میں، ہم کیا کہتے ہیں گنجائش کے ضارب. Scope-- میں نے اسے ایک بہت بڑا ہے خاص طور پر اس کی کلاس میں لفظ،. لیکن گنجائش، تمام کا مطلب ہے کہ آپ کوشش کر رہے ہیں یہ ہے کہ آپ کی صلاحیت کا سب سے بہتر کرنے کی psets. آپ کو تین باہر کی باری ہے اپنے چار مسائل کے اور یہاں تک کہ کوشش نہیں کرتے گزشتہ ایک، آپ کو شاید ہو دائرہ کار پر کچھ پوائنٹس کھونے کے لئے جا. آپ کو صرف مسئلہ شروع یہاں تک کہ اگر، اس کے ذریعے چلنے کے لئے اپنی پوری کوشش کروں. یہ کام نہیں کرتا یہاں تک کہ اگر،، اس میں باری کہ ظاہر ہوتا ہے اور ظاہر کرتا ہے کیونکہ ہم سے آپ کو اس کی کوشش کر رہے ہیں کہ آپ مسئلہ سیٹ کی کوشش آپ کی صلاحیت کا بہترین. اور پھر ہم آپ کو دے سکتے ہیں گنجائش کے لئے مکمل پوائنٹس. دائرہ کار بھی جب ہم نے کے لئے بہت اہم ہے سب سے کم اسکور pset کے ڈراپ کے بارے میں بات. تو کے دوران سمسٹر، تم لوگ نو کی psets ہے. اور ہم اصل میں گر جائے گا ان نو میں سے باہر سب سے کم اسکور، لیکن آپ کو مکمل گنجائش پوائنٹس ہیں صرف اس صورت میں. تو آپ کو ایک نامکمل pset میں کی باری ہے اگر، بدقسمتی سے، ہم اس سے ایک کو چھوڑ نہیں سکتا، اپنے دائرہ کار کی وجہ سے پوائنٹس مکمل نہیں کر رہے تھے. آپ کو خوفناک ہفتے ہے تو یہاں تک کہ اگر تم مر رہے اور اگر تم بیمار ہو جہاں یا اپنے کتے، آپ کی بلی، انتقال اور آپ کو ہوم ورک کے ساتھ زیادہ بار کر رہے ہیں، صرف pset کے کوشش. یہ آپ کی صلاحیت کا بہترین ہے. یہ کام نہیں کرتا تو، اس سے کوئی فرق نہیں ہے. بس میں اسے تبدیل. کم سے کم ہم دے سکتے ہیں آپ کی کوششوں کے لئے پوائنٹس. اس کلاس میں کوشش کے لئے ایک. کوشش کے لئے کم از کم سب سے کم اسکور ڈراپ میں. تو جی ہاں. اس سے بہت زیادہ ہے. کوئی اتنا سوال ہے دور کلاس میں ہم کس طرح گریڈ پر؟ یا ان میں سے کسی بھی؟ ان میں سے کوئی بھی ایسا far-- حصوں، دفتر کے اوقات؟ ٹھنڈا. ٹھیک ہے. تو یہ ہے کہ ایک موضوع نہیں ہے ایک واقعی کے بارے میں بات کرنے کے لئے پسند کرتا ہے. میں واقعی میں اس کے بارے میں بات کرنا پسند نہیں کرتے. تم لوگوں کو واقعی نہیں کرنا چاہتے مجھے اس بارے میں بات سننے کے لئے. لیکن بدقسمتی سے، ہم سب اس کے بارے میں بات کرنے کے لئے ہے. ڈیوڈ 20 منٹ خرچ اس کے بارے میں بات کر لیکچر. اور اس کے ساتھ مشروط ہے تعلیمی ایمانداری کے. تو ہم سب یہاں شاید لکھا ہے ہمارے ییل کیریئر میں ایک مضمون کچھ. ہم شاید ہم نے جہاں ایک بات ہو گیا ہے ہمارے مضمون چوری نہیں کرنے کے لئے کہا گیا، کہ کام ہمارا نہیں ہے کیونکہ. کمپیوٹر سائنس میں، ہم نے تصور کے اسی قسم کے. آپ جمع ہے کہ تمام کام، آپ کو لکھنے کہ تمام کوڈ آپ نے لکھا ہے کہ کوڈ ہونا چاہئے. آپ ہے کہ کوڈ نہیں ہونا چاہئے کہیں اور سے کاپی. کوڈ نہیں ہونا چاہئے کہ آپ گوگل میں گئے plopped ہے یہ کام کرتا ہے اور آپ کو سچ میں پتہ نہیں. آپ کی طرح کی کا احساس ہے یہ لیکن سچ میں نہیں کیا کر رہی ہے. جب شک میں، بنیادی طور پر، یہ صرف مناسب ہو رہا ہے. ہمارے نصاب پر، ہم نے چیزوں کی ایک پوری فہرست ہم کے طور پر مناسب دیکھیں مناسب نہیں بمقابلہ. مثال کے طور پر، مناسب تم اور تمہارا دوست ہے کیا بہترین طریقہ پر بحث جانا کے بارے میں منطقی طور پر ایک مسئلہ کو حل کرنے. کہ منصفانہ مناسب ہے. کیا مناسب نہیں ہو گا اگر آپ کو ہے لوگ،، مل کر ایک ہی کوڈ ٹائپ اور ایک ہی کوڈ میں تبدیل کر دیا. کہ مناسب نہیں ہے. ایک ہی بات، ایک مضمون کی طرح. آپ کے بارے میں بات کرنا چاہتے ہیں تو اپنے دوست کے ساتھ، ارے، اس کے بارے میں لکھنے کے لئے چاہتے ہیں. یہ میں چاہتا ہوں اقدامات ہیں عظیم، اس کے بارے میں لکھنے کے لئے لے. یہ بہت اچھا ہے. ایک دوسرے کے ساتھ تعاون کریں. تم لوگوں کو شروع کرتے ہیں تو ایک ہی بات لکھ، اسی مضمون میں تبدیل، کہ کم ٹھیک ہے. جب شک میں، صرف ایسا نہیں ہے. یہاں، ہم نے CS50 میں، ہم سکرپٹ ہے کہ رن ٹیسٹ کرنے کے لئے خود کار کرنے کے نہ صرف آپ کے کوڈ کے درست، بلکہ آپ کے کوڈ کی انفرادیت. تو پوزیشن میں ہمیں ڈال دیا نہیں کرتے براہ مہربانی کے EXCOMM آپ کے کیس کا حوالہ دیتے ہیں کرنے کے لئے. صرف دو، صرف سب کے لئے براہ مہربانی یہ ایک حیرت انگیز تجربہ بنانے کے. ہر کوئی، بہتر سیکھتا ہم سب خوش ہیں، اور ہم سب کے لئے قائم کر رہے ہیں اس کورس میں کامیاب. بہت ہے کہ کچھ اس کلاس کے بارے میں منفرد میں نے سب سچ چاہئے لگتا ہے کہ ہم ہے پر توجہ دینا کیا افسوس کہا جاتا ہے ہمارے نصاب میں شق. تو بنیادی طور پر، 72 گھنٹوں کے اندر اندر، تو آپ کچھ ہے یقین تم سچ میں یقین تھا کہ نہیں ہو مناسب، ہمارے پاس آتے ہیں براہ مہربانی. ہم تم سے وعدہ کرتا ہے کہ 72 گھنٹے کے اندر ہم کیس خود سنبھال لیں گے ایک اعلی کا حوالہ دیتے ہوئے بغیر انتظامیہ میں اتھارٹی. تو تم نے مجھ سے آتے ہیں اور کا کہنا ہے کہ، Andi کی، ارے، مجھے بہت افسوس ہے، لیکن میں نے ایک جوڑے کی لائنز میرے نہیں ہے میں اس قسم کی گوگل اس کوڈ گزشتہ رات، اسٹیک سے دور ہے اتپرواہ، کاپی اور چسپاں، اور مجھے سچ میں، بہت افسوس ہے اس کے بارے میں، مجھے بتائیں. صرف اس تلخیاں اجازت نہیں ہے براہ مہربانی اور صرف میں نے اسے پکڑنے کے لئے امید ہے کہ. ہم اسے پکڑنے گا. بس میرے پاس آنا. مجھے 72 گھنٹوں کے اندر اندر بتائیں. ہم ایک حل پتہ لگا لیں گے. اور ہم سے رجوع نہیں کریں گے کہ وعدہ کرتا ہوں بنیادی طور پر یونیورسٹی کے حکام. تو یہ آپ کے بہترین مفاد میں ہے صرف سب کے ساتھ ایماندار ہونا کورس میں شامل. ٹھیک ہے. ٹھیک ہے. تو اب، پہلے فوری طور پر میں پر منتقل، کسی کرتا ہے لاجسٹکس کے بارے میں سوالات ہیں، کس طرح کورسز پر ہم کو چلانے کے لئے جا رہے ہیں، کس طرح حصوں جا رہے ہیں ، اس میں سے کسی کو چلانے کے لئے کس طرح؟ ٹھیک ہے. جی ہاں. سامعین: [اشراوی]؟ ANDI پینگ: جی ہاں. تو ہیں کہ کس طرح تم میں سے بہت quizzes-- پیر / بدھ کے سیکشن میں؟ میں تم میں سے کتنے ہیں منگل / جمعرات؟ ٹھیک ہے، تو یہ یہاں ایک ٹھوس تقسیم ہے. تو ہم کو چلانے کے اس طرح ییل میں یہ ہے کہ ہم ہے الگ الگ دو کرنے جا رہے ہیں ہر section-- لئے ایک quizzes-- کہ کلاس کے دوران لے جایا جائے گا. میں، اکتوبر، اکتوبر کے آخر ہے ایک ہفتے کے طور پر اس طرح کچھ، کوئز کے. جی ہاں، تو صرف کلاس میں آنے. کہ پیر کے روز یا بدھ کے روز، آپ کوئز لے لیں گے. کہ منگل یا جمعرات، آپ کو ایک مختلف کوئز لے لیں گے. لیکن ایک ہی مواد شامل کیا جائے گا. جی ہاں. اچھا سوال. جی ہاں. سامعین: ہم کہاں کرتے ہیں ہمارے گریڈ چیک کرنے کے لیے جا رہے ہو؟ ANDI پینگ: جی ہاں. تو میں باہر ایک بھیج دیا جائے گا ای میل جو ہر ہفتے quizzes ہے graded-- ہیں یا جب، معذرت، کی psets درجہ بندی کر رہے ہیں جب. عام طور پر psets کر دیا گیا ہے دوپہر یا جمعہ کی طرف سے. تو میں نے گا کہ وعدہ آپ کو انہیں واپس حاصل کرنے کی کوشش مندرجہ ذیل جمعہ کی دوپہر تک. جب بھی میں گریڈ ایک pset، میں بھیج دیا جائے گا گریڈ کتاب پر ایک نوٹیفکیشن باہر کہ آپ کو آپ کا سکور کو بتاتا ہے آن لائن دیکھا جا سکتا ہے. تو صحیح اس ہفتے، میں نے کے بعد گزشتہ ہفتے کے کی psets گریڈنگ ختم، تم لوگوں کو ایک ای میل ملے گا نوٹیفکیشن، تم سے کہہ ارے یہ تم کہاں ہے آپ گریڈ دیکھنے کے لئے جانا. اور تم ہر دیکھ سکتے ہیں آپ گریڈ کی خرابی. اگر آپ کے تبصرے دیکھ سکتے ہیں. اوہ، فوری بات بھی. عظیم میں تبصرہ کے سیکشن کتاب جہاں میں شاید گا ہے اپنے وقت گریڈنگ کی اکثریت خرچ. تو ایک بات ہے کہ جب بہت ضروری تم لوگوں کو دیکھ رہے ہیں آپ گریڈ آپ کی psets پر صرف تلاش میں نہیں ہے جسمانی سکور پر بلکہ کے لئے وقت نکالنے واقعی میرے تبصرے کو پڑھنے کے. اکثر ایسا ہوتا ہے کہ آپ کی رائے دیتا ہے آپ کو کوئی مسئلہ حل کر رہے ہیں کہ کس طرح. آپ کو ایسا کرنے کی ضرورت ہے تھوڑا سا بہتر کچھ، تعمیری تنقید عام طور پر ہے بہترین ان کے تبصرے کے سیکشن میں دی گئی. تو،، میں جا رہا ہوں براہ مہربانی تبصرے لکھنے وقت خرچ کرنے کے لئے. ، میں واقعی اس کی تعریف کرے گا، براہ مہربانی تم لوگوں کو ان کے تبصرے کو پڑھنے جائے گا تو. ٹھیک ہے. ٹھنڈا. بالکل ٹھیک. تو ہم بات شروع کرنے جا رہے ہیں اور صرف فوری طور پر جائزہ لینے کے کے مواد میں سے کچھ ہفتے ہم ہیں صرف اتنا صفر کے لئے صحیح صفحے پر اس ہفتے کے مسائل شروع. تو دیر لوپ میں سے ایک ہے loops کی تین اقسام میں ہم نے پہلے اس کلاس میں تبادلہ خیال کیا. تھوڑی دیر لوپ بنیادی طور پر نحو میں لکھا ہے جہاں، ایک مخصوص حالت جبکہ، اس حق، بار بار کرتے ہیں؟ یہاں اس گرافک میں اس کے بارے میں سوچو. آپ کو ایک پر شروع کرنے کے لئے جا رہے ہیں آپ کے کوڈ میں خاص نقطہ. آپ کو لوپ کی حالت میں داخل کرنے کے لئے جا رہے ہیں if-- میں نہیں جانتے ایکس ایک سے بھی کم ہے. اگر یہ سچ ہے، تم جا رہے ہو لوپ کے جسم پر عمل کرنے کی. اور تم کیا کر رکھنے کے لئے جا رہے ہیں کہ ایک بار پھر، ایک بار پھر، ایک بار پھر، یہ ایک وجہ ہے کے دوران اور ختم ہو چکا ہے جس میں loop-- اپنی حالت ہونے تک جھوٹے. اس طرح میں، تھوڑی دیر لوپ تو آسان طریقوں میں سے ایک ہے حالت کے کسی بھی طرح لکھنے کے لئے کہ اور اس سے زیادہ اور اس سے زیادہ دوبارہ کرنے کی ضرورت ہے. بس جب بھی ہوشیار رہنا آپ کو لوپ کے کسی بھی طرح لکھ رہے ہیں آپ ایک سے نکلنے کی شرط کے طور پر ہے کہ اچھی طرح سے جو کچھ بھی کرنے کے لئے ایک اپ ڈیٹ کے طور پر آپ لوپ صرف نہیں ہے کہ ایسا ہے زیادہ اور infinitely زیادہ چلاتے ہیں. کسی بھی صورت میں، آپ جا رہے ہیں بات کو یقینی بنانا چاہتے ہیں تم میں سے بعض پہلو تبدیل کر رہے ہیں کہ آپ کے کوڈ یا لوپ کے آخر میں صرف آپ کو ایک طریقہ ہے اس بات کو یقینی بنانے کے لئے حالت کی طرف ترقی کے آپ کو ختم کرنے سے ملنے کے لئے چاہتے ہیں کہ. کہ سب کو احساس ہے؟ ہم صرف بننا چاہتا ہوں نہیں اس سرپل جہاں میں پھنس ہم کے ارد گرد اور ارد گرد جاؤ اور لوپ کو توڑنے کے لئے کوئی راستہ نہیں ہے. اور ہر لوپ بنیادی طور پر ایسا کرنے کا ایک طریقہ ہے. ٹھیک ہے. تم میں سے دوسری بات، بہت آپ ماریو کی psets میں شاید ملازم کرنا پڑا لوپ کے اس قسم کے. یہ ایک ایسا لوپ جبکہ کہا جاتا ہے. سب سے پہلے، کسی نے مجھے بتا سکتے ہیں کیا کرتے ہیں کے درمیان فرق لوپ اور تھوڑی دیر لوپ ہے؟ جی ہاں. سامعین: لوپ جبکہ [اشراوی] پہلی نظر میں چلتا ہے. ANDI پینگ: جی ہاں، بالکل. تو کرتے ہیں لوپ ہمیشہ کرتا ہے جبکہ جو کچھ بھی بریکٹ کے اندر، ہے اندر ہے وہاں اور اس شرط کرتا the-- معذرت لئے جانچ پڑتال سے پہلے، اس سے پہلے کہ کوڈ کرتا حالت کے لئے کی جانچ پڑتال. اور یہ ہمارے لئے خاص طور پر متعلقہ ہے یہاں اس کلاس میں، سب سے زیادہ بار کی وجہ سے ہم فوری طور پر کرنا چاہتے ہیں جا رہے ہیں ان پٹ کے کسی قسم کے لئے صارف. اور پھر، پر منحصر ہے وہ ہمیں دے ان پٹ، پھر ہم اوہ، کیا، اندازہ کر سکتے ہیں ہم ایک بار پھر انہیں فوری طور پر کرنے کی ضرورت ہے؟ ماریو تو، اگر صارف آپ کو دیا منفی اونچائی، مثال کے طور پر، آپ سب سے پہلے فوری طور پر جا رہے ہیں اور اندر ہے جو کچھ بھی. اس کے بعد آپ جبکہ چیک کرنے کے لیے جا رہے ہیں. آپ جانتے ہیں، 1 منفی ہے ایک مثبت عدد ہے؟ اگر یہ نہیں ہے، میں جا رہا ہوں واپس اور کرتے ہیں اور دوبارہ دہرانے اور دوبارہ اور وہ جب تک دہرائیں آخر میں آپ کو آپ کو پسند ہے کہ ایک نمبر دے، ہم سب اپنے کوڈ میں ملازم کر سکتے ہیں. اس کے لئے بہت اہم ہے بنیادی طور پر کسی بھی صارف کی ان پٹ. میں کسی بھی آپ کی ضمانت لے سکتے ایک pset جہاں میں وقت ہم ان پٹ کے لئے تم سے پوچھنا کوڈ کے کسی بھی طرح، ہم ہیں شاید آپ کو دینے کے لئے جا ہم ہیں جس میں ایک ٹیسٹ کیس جا رہا ہے کہ ہے آپ کو برا کچھ دینا اپنے کوڈ کو توڑنے کے لئے کی کوشش کر رہے. ہم ان پٹ ایک لئے تم سے پوچھنا کرنے کی کوشش کریں عددی، ہم صرف آپ کو ایک تار دے سکتا ہے اور آپ اس کو ہینڈل کریں گے کہ کس طرح دیکھنے. ہم ایک سال کی عمر ملازم لئے تم سے پوچھنا تو، ہم آپ کو ایک منفی نمبر دے سکتے ہیں آپ اس کو سنبھال گا کہ کس طرح دیکھنے کے لئے. بس تم لوگوں کے لئے ٹیسٹ کر رہے ہیں بات کو یقینی بنانے مقدمات جس میں آپ کو سب سے بہتر حاصل نہیں ان پٹ، صرف کا کہنا ہے کہ. اور لوپ جبکہ کرتے ہیں اکثر سب سے بہتر ہے تاکہ آپ کے کوڈ کا ڈیزائن طریقہ اس دائرہ کار کے مطابق ہے کہ. ٹھیک ہے. ٹھیک ہے. تو شاید یہ سب سے زیادہ ہے تین میں سے پیچیدہ لوپ کہ ہم نے اب تک میں دیکھا ہے. اور یہ پہلی نظر میں بہت ڈراونا لگتا ہے. لیکن میں، آپ کو اس بات کی ضمانت آپ لوگ ایک بار لوپ کے لئے ایک استعمال کرنے کے لئے کس طرح کی ہینگ حاصل، یہ سب سے زیادہ مفید چیزوں میں سے ایک ہے، اپنے ہتھیاروں میں سب سے زیادہ مفید اوزار اس کلاس میں آگے منتقل کرنے کے لئے. لہذا مثال کے طور، سکریچ میں، ہم یہ بہت آسان بلاک تھا کہ صرف اس بات کا یقین دوبارہ کہا اوقات کی ایک مخصوص تعداد کے جملے. ویسے، SAJ-- کہ Scaz Andi کی جیسن. ہم اکثر ہماری ای میلز سج دستخط. ہم سج کہتے ہیں، الجھن میں نہ ہو. یہ صرف ہم ہے. تو سکریچ میں، ہم کرنے کے قابل تھے انہوں نے کہا کہ ایک بلاک، میں سج محبت دوبارہ! 10 بار. بہت آسان. اس کے پیچھے منطق ہے بہت، بہت آسان، ٹھیک ہے؟ میں سب سے پہلے سب سے پہلے کے ذریعے جانے کے لئے چاہتے ہیں وقت اور اس کے، دوسری بار دیکھیں اور تو آگے، کہ، تیسری بار دیکھیں اور اسی طرح، جب تک کہ آپ 10 کے لئے مارا. اور جس طرح ہم اس کی نمائندگی کریں گے کوڈ صرف لوپ کے لئے ایک سادہ کے ذریعے ہے. کے لئے تو، آپ کا اعلان کرنے جا رہے ہیں اس معاملے میں یہاں آپ کی متغیر،، ایک int کے ساتھ. ہم نے اس میں نام کے لئے جا رہے. ہم 0 اس کی ابتدا کرنے کے لئے جا رہے ہیں. اور روکنے ایڈیشن ہے میں جا رہا کم 10 ہے. اور اپ ڈیٹ میں + + ہونے جا رہا ہے. اور لوپ کے اندر اندر، یہ جا رہا ہے آخر میں اس تک عملدرآمد کرنے condition-- کے آخر مار دیتی ہے جس میں کیس، یہ لوپ کو توڑنے کے لئے جا رہا ہے. چیزیں نہیں ہونا چاہئے کہ آپ کو لوگ تمام قسم کے پہلے دیکھا ہے آپ کا مسئلہ ایک سیٹ کے لئے اور ایسا کرنے کے لئے تھا. کسی بھی سوال ہے ابھی loops کے لئے کے بارے میں؟ ٹھیک ہے. عظیم. ٹھیک ہے. ہے جو تم میں سے ان لوگوں کے لئے تو اس ہفتے کے لئے pset رپورٹ پڑھ ہم ملازم کرنے کے لئے جا رہے ہیں جانتے ہیں کہ کچھ ASCII اور ASCII میز کہا جاتا. تب داؤد نے لیکچر میں مختصر طور پر چلا گیا کمپیوٹرز essentially-- سب کچھ میں ایک کمپیوٹر میں انکوڈنگ ہے بائنری، zeros اور ہیں میں. اور کمپیوٹر کے قابل ہیں کہ راستہ اس کے علاوہ میں مختلف اقدار کو ذخیرہ کرنے zeros اور ہیں کے لئے تعریفیں کے ذریعے ہیں ان کی تعداد دیگر ہندسوں کی نمائندگی کرنے یا بنیادی طور پر دوسرے حروف. ، ایک تو اس صورت میں یہ کرتا ہے table-- ASCII نمبروں پر نقشہ حروف، یا حروف، ہے. ماخذ کوڈ فائل میں تو آپ اس کو دیکھتا ہے کمپیوٹر، ارے، zeros اور ہیں کا ایک گروپ، zeros اور ہیں، zeros اور ہیں. اس میں محفوظ کیا ہے آپ کے کمپیوٹر کی اصل میموری. لیکن ہم انسان کے لئے چاہتے ہیں جب کمپیوٹر کے ساتھ بات چیت، ہم مثال کے طور پر، کا کہنا ہے کہ want--، میں بڑے ایک چاہتے ہیں تو، میں کسی طرح کی ضرورت کرنے جا رہا ہوں کمپیوٹر بتانے کی، اوہ، میں بڑے ایک قسم جب، میرا مطلب بائنری میں نمائندگی. اور ہمیں اس پر کرتے ہیں جس طرح پھینک دیا جاتا ہے ایک صوابدیدی بات ایک ASCII میز کہا جاتا، ہم کہاں، انسانوں کے طور پر، کے طور پر پروگرامرز، کچھ وقت پہلے، ہم منمانے ہم نے فیصلہ کیا کہ ان نمبر تفویض کرنے جا رہے تھے ان حروف اقدار. تو تم لوگ اس آن لائن گوگل کر سکتے ہیں. میں اس کے لئے ایک لنک آپ میں نہیں ہے pset-- صرف ایک ASCII میز نقشے، ASCII ٹیبل. یہ صرف بائنری ترجمہ حروف میں تعداد. اور یہ بہت ہو رہا ہے آپ کا مسئلہ سیٹ کے لئے مفید آپ چاہتے ہیں جب بھی کچھ یا اگر آپ کا حساب کچھ ظاہر کرنے کے لئے چاہتے ہیں حروف یا integers کے یا مخصوص حروف جوڑتوڑ. یہ بہت ہو رہا ہے اہم ہے کہ آپ کو تمام ایک ASCII میز گھومنے پھرنے کے لئے کس طرح جانتے ہیں. مثال کے طور پر، بڑے ایک تو نمبر 65 کی طرف سے نمائندگی کر رہا ہے. اور چھوٹے ایک 97 کی طرف سے نمائندگی کر رہا ہے. تو یہ جاننا ضروری ہے دو اقدار کے درمیان فرق 32. اکثر، آپ سے تبدیل کرنے کی ضرورت ہے ایک دوسرے کے، فرق 32 ہے. آپ کی قسم ہو تو فکر نہ کرو سب سے پہلے میں اس پر کی الجھن. ہم کس طرح ہم کریں گے پر جائیں گے اصل کوڈ میں اس ملازم. ٹھیک ہے. ، باہر لیپ ٹاپ کے ساتھ آپ کے ان لوگوں کے لئے تو ایک ASCII میز ھیںچو کرنے کے لئے آزاد محسوس کرتے ہیں، یہ شاید وجہ سے تم لوگوں کا حوالہ کرنے کی ضرورت حروف ہیں. ٹھیک ہے. تو یقین ہے کہ جاننے کے حروف، مخصوص تعداد نقشہ میں صرف پہلے چلانے کے لئے تھے تو اس کی لائن، printf ایک code-- ایک، مائنس خفی بڑے اے کسی ہے کیا ہو گا پر ایک اندازہ ہے حق اب سکرین کے باہر پرنٹ؟ تو سب سے پہلے، کیا کرتا ہے ایک کی نمائندگی کرتے ہیں چھوٹے؟ کیا تعداد ہے ASCII ٹیبل میں انکوڈنگ. معاف کیجئے گا؟ سامعین: 97؟ ANDI پینگ: 97، عظیم. اور بڑے ایک کیا ہے؟ سامعین: 65. ANDI پینگ: تو 97 مائنس 65 کیا ہے؟ سامعین: 32. ANDI پینگ: ٹھیک ہے. تو جا رہا ہے تم لوگ کیا سوچتے ہیں جب میں ان پٹ ہو کہ کوڈ کے مطابق میرے کمپیوٹر میں؟ سامعین: [اشراوی]. ANDI پینگ: معذرت، بولو. فکر نا کر. یہ ایک بہت محفوظ ہے ماحول، مائنس کیمرے. ہم سب کو کوئی تشویش to-- جا رہے ہیں. بس ہم سب کی طرح کا ڈرامہ کرنے جا رہے ہیں یہ صرف ہمیں اس کمرے میں ٹھنڈا ہے. فکر نا کر. کوئی سوال بھی بیوکوف ہے. کوئی جواب ایک احمقانہ جواب ہے. میں شاید غلطیوں کو بنانے کے لئے جا رہا ہوں میری تعلیم کے دوران میں. سنجیدگی سے، لوگ، صرف اسے باہر زور سے بولنا. اپنے آپ میں اعتماد ہو، تم جانتے ہو؟ تو وہ کیا تھا؟ جو آخری جواب ہے؟ ٹھیک ہے. کہ اچھا اور واضح چللاو. سامعین: 32 ANDI پینگ: 32. ٹھیک ہے، اس کوڈ کو چلانے دو اور کہ کیا ہوتا ہے تو دیکھنے کے. ٹھیک ہے. تو کے طور پر تم لوگ کر سکتے ہیں قسم کی ، میں نے عام سنکیتن دیکھیں ہم ملازم گا کہ کس طرح کے لئے یہاں قائم ہمارے کمپیوٹر میں پروگرام کے کسی بھی قسم کی. ہم ہمارے مرکزی تقریب ہے ہمارے مرکزی تقریب کے اندر اندر. میں نے صرف کاپی کرنے کے لئے جا رہا ہوں اور کوڈ کی اس لائن چسپاں کر دیں. جب آپ لوگ بھی ہوشیار رہنا کاپی اور پیسٹ کوڈ ہیں. کبھی کبھی بعض آپریٹرز درست طریقے سے زیادہ پیسٹ نہیں کرتے. اس صورت میں، مائنس سائن اصل میں ایک ڈیش تھا. اور اس طرح کمپیوٹر اس اٹھا نہیں کیا. تو میں واپس جانا پڑا اور جسمانی طور پر کہ ٹائپ. بس وقت محتاط رہیں تم لوگ کر رہے ہو. ٹھیک ہے. ہم یہاں اس کو چلانے کے لئے جا رہے ہیں. تو ہم ہمارے section2 میں سی ڈی کے لئے جا رہے. میں نے اس پروگرام کے ASCIIMath بلایا ہے. ہم کسی بھی چلاتے ہیں تو، یاد پروگرام، ہم سب سے پہلے اسے مرتب کرنا چاہتے ہیں ہمارے شرنگار کے ذریعے چلانے کی طرف سے. اور پھر ہم اصل میں چلانے کے لئے چاہتے ہیں ڈاٹ سلیش کر پروگرام. تو ہم ./asciimath لئے جا رہے ہیں. ٹھیک ہے، ہم وہاں چلتے ہیں. اور ہم 32 دیکھیں. بہت اچھے. آپ کینڈی کا ایک ٹکڑا کے مستحق ہیں. آپ کے کینڈی. معذرت. بالکل ٹھیک. ٹھیک ہے. تو ہم یہاں واپس اپنے مثال کے طور پر جا سکتے ہیں. کوئی، آہ. آہ. ٹھیک ہے. میں نے صرف اسے اس طرح رکھنے کے لئے جا رہا ہوں. ٹھیک ہے. ٹھیک ہے. تم لوگوں کو دیکھ سکتے ہیں تو کے طور پر، ہم کر سکتے ہیں بہت دلچسپ چیزوں کے بہت سے، بہت ٹھنڈا چیزوں کی ایک بہت کی ایک بہت شامل بہت پیچیدہ چیزیں ASCII حروف اور اعداد. آپ پانچ لائن سے نیچے حاصل کرنے کے بعد، کہ ساتھ کی پیروی کرنے کے لئے ایک بہت ہے. ہمیں جانا نہیں کر رہے ہیں سیکشن کے ذریعے. اگر آپ کر سکتے، کے لئے بلا جھجھک، کاغذ پر اسے باہر کی وجہ سب سے پہلے کب کیا ہو جائے گی اقدار کی آپ کو ان پٹ اس طرح ایک تار. مثال کے طور پر، کہ آخری سطر میں، ہم نے z-- ایک مخصوص نمبر کا نمائندگی کرتا ہے جو a-- بھی نمائندگی کرتا ہے جو ایک مخصوص نمبر کا پلس 1 modulos 26 کے علاوہ ایک چھوٹے. تم لوگ پڑھنے کو برقرار رکھنے تو ان کے ذریعے، آپ کو ایک پیٹرن میں آنے کو دیکھ سکتے ہیں ہم کس طرح کوڈ توڑ رہے ہیں. میں انتہائی، انتہائی مشورہ آپ کے سیکشن کے بعد لوگ آگے اور ان پٹ جانے آپ کے کمپیوٹر میں ان تمام اور کس طرح دیکھنے کے تعداد باہر آ رہے ہیں اور ان لوگوں کو کیوں ذریعے استدلال کیونکہ آپ کی psets کے لئے، ہو یہ بہت ضروری ہو جائے گا آپ کو سمجھنے کے لئے کیوں بعض باتیں ہو رہی ہیں. ان سلائیڈوں کی تمام آن لائن ہو جائے گا. کرنے کی کوشش کر کے بارے میں کوئی تشویش نہیں جسمانی طور پر نوٹوں کو نیچے کاپی. سب کچھ آن لائن. یہ سیکشن خود آن لائن ہو جائے گا. میرے تمام منبع کوڈ ہے کہ میں آن لائن ہو جائے گا رہا ہوں. جی ہاں. اگر آپ اب بھی ایک سوال ہے؟ سامعین: modulos کیا ہے؟ ANDI پینگ: ٹھیک ہے. تو modulo جا رہا ہے کہ ایک آپریٹر ہے اپنے لوگوں کی pset کے لئے بہت اہم ہو یہاں. تاکہ آپریٹرز طریقہ C میں اور پروگرامنگ کام میں آپ کیا کہتے ہے ڈویژن علامت اور معامل علامت، جس میں صرف فیصد کی علامت کی طرح ہے. سی، میں تو آپ کو ایک عددی کرتے ہیں جب ایک سلیش کے ساتھ ایک عددی کی طرف سے تقسیم، سی کاٹ کرنا چاہتے ہیں کے لئے ایک رجحان ہے دشملو پوائنٹس کی سب سے دور، ایک عددی چاہتا ہے کیونکہ ایک عددی میں تبدیل کرنے. یہ ایک ڈبل ہونا چاہتے ہیں نہیں جا رہا ہے سب اس کے بعد دشملو کے ایک گروپ کے ساتھ. میں 2 سے تقسیم 3 کرتے ہیں تو، یہ جا رہا ہے 0.5 کاٹ اور صرف آپ کو 1 دینے کے لئے. کہ کچھ ہے ایسا کرنے میں تم جب بہت ہوشیار پروگرامنگ میں ریاضی کے کسی بھی قسم کی کر، تعداد آپ کو ملتا ہے تعداد نہیں ہو سکتا آپ سوچ رہے تھے کہ، جس میں کیوں پکڑ دھکڑ ہے آپ آخری pset اتنا اہم ہے. modulo ہے آپ باقی دیتا. 3 کیا مثال کے طور پر، تو modulo ہے 2-- تو 3 فیصد علامت 2-- یہ آپ کو اس کا باقی حصہ دے گا. تو 3 2 سے تقسیم 1.5 ہے. یہ 1 1 باقی ہے. یہ آپ کو 1، دے گی جس اس کا باقی ہے. تو تم لوگ آگے بڑھ رہے ہیں جب ASCII ٹیبل کے ذریعے، modulo ہے ہونے کی وجہ سے ختم ہو جائے گی بہت ضروری ہے کہ کچھ، اور ہم اس پر بعد میں بات کریں گے. ٹھیک ہے. بہت خوبصورت ہے کہ کچھ، خوبصورت نئی اور خوبصورت منفرد ہم نے اس ہفتے ہے پر تبادلہ خیال کیا ہے کہ ایک صف کیا ہے کا تصور. تو صف سب سے پہلے ہے آنکڑا ڈھانچہ کی قسم ہم جا رہے ہیں اس کلاس میں سامنا. تمام اعداد و شمار کا ڈھانچہ ہے صوابدیدی کی کسی قسم، ساخت کی طرح لفظی چیزوں ہم پروگرامرز کو پیدا کیا ہے کے طور پر، ہم اپنے کوڈ میں ڈال دیا ہے کہ کوڈ کے دوسرے ٹکڑے ٹکڑے پر مشتمل ہوسکتا ہے. اس معنی میں، ایک صف تو ایک فائل کابینہ کے طور پر اس کے بارے میں سوچنا، آپ کو مختلف کھولنے جہاں اگر آپ کی فائل کابینہ کے شیلف، آپ کو مختلف چیزوں تک رسائی حاصل کر سکتے ہیں. یاد میں، ایک سرنی صرف کر رہا ہے آپ کے کمپیوٹر پر ایک ہی بات. آپ مختلف blocks-- ہم کر سکتے ہیں ایک صف کے indices-- انہیں فون. یہ صرف ایک بلاک کی طرح ہے میموری کا ایک شیلف ہم کے اندر اندر پیدا کیا ہے کہ آپ کمپیوٹر ہے کہ آپ کو ان پٹ کر سکتے ہیں مختلف جگہوں میں کچھ چیزیں. ایک سرنی کے ساتھ تو، آپ ہمیشہ کی وضاحت ہے کرنے کے لئے ہے آپ کو ایک اعلان کی وضاحت کرنا پڑے مندرجہ ذیل کی شکل میں صف. آپ سب سے پہلے کرنے کے لئے جا رہے ہیں ڈیٹا کی قسم کی وضاحت آپ صف کی تخلیق کرنے کے لئے چاہتے ہیں کہ. میں integers کے ایک صف چاہتے ہیں تو، میں وہیں INT ڈال دیا جا رہا. میں ڈور کی ایک صف چاہتے ہیں تو، میں وہاں ڈور ڈال کرنے کے لئے جا رہا ہوں آپ صف کے نام، اور پھر آپ مربع بریکٹ کے لئے جا رہے. اور مربع بریکٹ کے اندر، تم آپ صف کے سائز کے لئے جا. کرنے کے لئے بہت اہم ہے کہ کچھ arrays کے پیدا کر رہی ہے جب ذہن میں رکھیں آپ کو ایک بنانے کے، ایک بار ہے کہ سرنی، اس سائز تبدیل نہیں کر سکتے. اگر تم جانتے ہو تو اب کہ آپ، سائز 10 کے ایک صف ہے میں 10 کے خلیات کے لئے جا رہا ہوں معلوم ہے اس صف کے اندر اندر سوچکانکوں کے اندر یا 10، اور یہ کبھی نہیں جا رہا ہے بڑھانے یا کم کرنے کے لئے کوئی بات نہیں کیا ہے، اور یہ کہ جگہ کی فی الحال صرف 10 بلاکس محفوظ کر سکتے ہیں آپ کی میموری میں مختص آپ ڈال دیا ہے جو کچھ بھی کرنے کے لئے 10 چیزوں. اس طرح میں، ایک سرنی ڈیٹا کی قسم، ایک صف ہے کہ اعداد و شمار کے ڈھانچے ہم کریں گے کچھ دوسروں سے بہت مختلف ہے اس کورس میں بعد میں احاطہ کیا جائے. جی ہاں. مثال کے طور پر، اگر آپ کرنا چاہتے تھے سائز 3 کی ایک سرنی پیدا ہونے والے integer-- کے موجود متغیر اوہ، معاف کرنا، temperature-- کے اور درجہ حرارت، کی کورس، ایک عدد صحیح ہے. تو ہم ہے جو، INT پیدا ہوں گے ہم ذخیرہ کرنے کے لئے کیا چاہتے ہیں کے اعداد و شمار کی قسم. ہم اس درجہ حرارت کو فون کرنے جا رہے ہیں نام کے نام کی خاطر ہم سب سمجھتے ہیں کہ کچھ. اور ہم مربع بریکٹ کے لئے جا رہے. اور ہم تین نمبروں چاہتے. تو ہم ڈال کرنے کے لئے جا رہے ہیں اس کے اندر تین. واقعی ہے کہ کچھ ذہن میں رکھنے کے لئے ضروری arrays کے صفر حساب سے ترتیب کر رہے ہیں ہے. کا مطلب ہے کہ سب کچھ آپ کو ہے 0 انڈیکس کے ساتھ شروع، اور آپ کے ذریعے چلاتے ہیں 1 مائنس صف کے سائز. تو یہاں مثال کے طور پر، ہم سائز 3 کے ایک صف ہے. یہ قابل ہونے جا رہا ہے تین اقدار کو منعقد کرنے. لیکن تعداد کہ خود کے تعداد، صف، کہ انڈیکس، صف، 2 کے ذریعے 0 ہیں. تو لوگ، جب واقعی، واقعی ہوشیار رہنا آپ کی مقرر کردہ اپنے مسائل سے گزر رہے ہیں اور صف میں سے کسی قسم کا پیدا کرنے، کیونکہ یہ وقت کی ایک بہت واقعی، واقعی بہت آسان ہے کہ بھولنے کے لئے. میں اصل میں انڈیکس نہیں ہے 3، کہ میں اس وقت صرف 2 انڈیکس ہے. اور آپ کو کرنے کی کوشش کریں تیسری انڈیکس تک رسائی حاصل، یہ کیا ہے ہونے جا رہا ہے شہوت انگیز null مختتم بلایا. یہ اصل میں کرنے کے لئے نہیں جا رہا ہے صف میں موجود ہیں. اور کمپیوٹر ہے کہ پسند کرنے کے لئے نہیں جا رہا. جب بھی ہوشیار رہنا آپ کو صرف چیزوں تک رسائی حاصل کرنے کر رہے ہیں آپ کو یاد ہے کہ یقینی بنانے کے لئے arrays ہیں کہ صفر حساب سے ترتیب. ٹھیک ہے. تو سب سے پہلے مثال کے طور پر صرف ہے ایک سرنی پیدا کرنے کا ایک طریقہ. میں نے دوسری مثال ذیل میں صرف ایک علیحدہ طریقہ ہے پیدا کرنے کے ایک ہی ڈیٹا ہے ہم صرف inputted کے ہے کہ ساخت. تو بجائے جسمانی چلانے کے ذریعے اور 0 کے درجہ حرارت میں ڈال جو کچھ بھی برابر، درجہ حرارت 1 جو کچھ بھی، درجہ حرارت 2 کے برابر ہے جو کچھ بھی، میں نے صرف اصل میں کر سکتے ہیں براہ راست ایک لائن میں یہ سب تخلیق درجہ حرارت مربع بریکٹ میں برابر. اور اس معاملے میں نوٹس، آپ کی ضرورت نہیں اپنے صف کتنی بڑی وضاحت کرنے، کمپیوٹر جا رہا ہے کے ذریعے جاؤ اور نہیں ہے کہ کو دیکھنے کے ان گھوبگھرالی منحنی خطوط وحدانی میں تین عناصر. اور یہ، ٹھیک ہے، معلوم کرنے کے لئے جا رہا ہے میں سائز 3 کی ایک سرنی کی ضرورت ہے. آپ کرنے کی ضرورت نہیں کر رہے ہیں ان پٹ اسے مندرجہ ذیل طریقے. اور بھی، جی ہاں، اس طرح. کسی سوال ہے ہم arrays بنانے کے کس طرح کے بارے میں یا ایک سرنی کے ڈھانچے کیسے کام کرتا؟ جی ہاں. سامعین: [اشراوی]؟ ANDI پینگ: جی ہاں، بالکل. تو آپ کا اعلان اور ابتدا کرنے کے لئے تھے تو ایک صف مندرجہ ذیل طریقہ کار، جو دوسرا طریقہ ہے، آپ کو صرف ان لوگوں کو چھوڑ کر سکتے. اور کمپیوٹر خود کار طریقے سے جانتا ہے کہ کتنے عناصر کو شمار کرنے کے لئے کی ضرورت ہے ان گھوبگھرالی منحنی خطوط وحدانی میں، الگ کر رہے ہیں کوما سے. تو یہاں وہ 65، 87، 30 دیکھیں. کمپیوٹر، اوہ، جانتا ہے تین integers ہے. میں ایک صف کے نام پیدا کرنے کے لئے جانتے ہیں اس میں تین عناصر کے ساتھ درجہ حرارت. اچھا سوال. جی ہاں. سامعین: یہ ممکن بنانے کے لئے نہیں ہے اعداد و شمار کے مختلف اقسام کے ساتھ ایک سرنی کہ اس میں داخل ہو سکتا ہے؟ مثال کے طور پر، integers کے ساتھ [اشراوی]؟ ANDI پینگ: مقاصد کے لئے اس طبقے کی، کوئی، ٹھیک ہے اب. آپ کو ایک ڈیٹا کی تخلیق کرتے وقت ایک صف کی طرح کی تشکیل، تم سے کہہ رہے ہیں کمپیوٹر، ارے، میں آپ کی ضرورت ہے اتنا مختص کرنے میری ہارڈ ڈرائیو میں میموری، ہر سیل ایک ہونے کی وجہ سے بٹس کی ایک مخصوص تعداد. ہم ہفتے میں سیکھا یاد رکھیں صفر کہ مختلف اعداد و شمار اقسام مختلف سائز ہے؟ مثال کے طور پر، ایک تار تو ایک مختلف رقم ہے ایک چار، کے مقابلے میں جگہ کی جس جگہ کی ایک مختلف رقم ہے ایک عددی کی طرف سے. اور اس طرح آپ کی وضاحت اور تم نہیں جانتے تو اختلاط اور متغیرات میں سے کس قسم سے ملنے آپ کے کمپیوٹر کی، ہے جانے بہت الجھن میں پڑ جائے. اور یہ معلوم کرنے کے لئے نہیں جا رہا ہے کتنی میموری آپ کو دینا. حق کے مقاصد کے لئے تو اب، کمپیوٹر صرف کر سکتے ہیں ایک صف کی ایک قسم کی شناخت. اچھا سوال. ٹھیک ہے. تو قدرتی طور پر، ہم دوسرے سوال ہم نے ایک پیدا کیا ہے کہ اب، اچھی طرح سے، ہے سرنی اور ہم ان تمام چیزوں کے ڈال دیا ہے صف میں، ہم کس طرح ہیں اس تک رسائی حاصل کرنے کے قابل ہونے جا رہا؟ عام ساخت ہے تاکہ ہم ہمیشہ ایک سرنی تک رسائی حاصل کر لوپ کے لئے ہمارے خوبصورت ہے. ہم ہو جائے گا کہ میں تم لوگوں سے وعدہ یہاں اس کے ساتھی کی ایک بہت دیکھ کر. بنیادی طور پر، کسی بھی وقت آپ چاہتے ہیں ان پٹ کے لئے ایک صف میں اقدار یا آپ ان تک رسائی حاصل کرنا چاہتے ہیں، ایسا کرنے کا بہترین طریقہ، لوپ کے لئے ایک ہے کیونکہ لوپ کے لئے ایک میں، آپ تم کتنی بار جانتے صف کے ذریعے چلانے کے لئے کرنا چاہتے ہیں جا، آپ کو ایک سٹاپ ایڈیشن ہے کیونکہ، ٹھیک ہے؟ اور ہر وقت آپ کو چلانے کے کے ذریعے، آپ تک رسائی حاصل کر سکتے ہیں صف کی ایک مختلف عنصر. اور بھی، یہ ایک وجہ عام طور پر ہے ہم، 0 قیمت میں loops کے لئے ہمارے آغاز آپ arrays رسائی کیونکہ جب، آپ کو صفر انڈیکس تک رسائی حاصل کر سکتے ہیں. اور اس طرح یہ بہت اچھی طرح سے متوازی. تم لوگوں کے لئے چاہتا ہے کر سکتے ہیں میں 1 برابر ہے int کے لئے لکھتے ہیں. میں سے کم یا 3 کے برابر ہے. لیکن یہ کافی کے طور پر کام نہیں کرے گا یہاں، آپ کی وجہ سے صرف 0، 1، اور 2 کے عناصر ہیں. اور اس طرح آپ کو شروع کرنے کے لئے تھے تو آپ کے عنصر 1، 2 میں، اور 3، آپ کو چلانے کے ختم کرنے کے لئے جا رہے ہیں اپنے صف کی حد سے باہر، اور بری چیزوں ہونے جا رہے ہیں. تو میں تم لوگوں کو segue کا دیکھیں امید کیوں پہلے کلاس میں ہم کس طرح چلانے کے لئے تم لوگوں کو سکھا رہے تھے اور لوپ کے لئے ہم تھے اس طرح ایک شکل. اب ہم نے، کیونکہ یہ ہے arrays میں منتقل، آپ کیوں 0 ڈھال لیتا ہے دیکھ سکتے ہیں خود کو بہت اچھی طرح سے تک رسائی حاصل کرنے. تو ہم ایسا راستہ ہوں that-- ہے صرف خاطر یہاں یہ باہر پرنٹ اسے باہر پرنٹ کی. لیکن میں نے اپنے پلیس ہولڈر، کوما ہے. اور اصل تک رسائی حصہ ہو رہا ہے. صف کے نام درجہ حرارت بلایا گیا تھا. تو یہ درجہ حرارت اور ہے صف کی میں ویں عنصر. لوپ کے لئے کے ذریعے چلتا ہے کے طور پر تو، یہ 0 سے شروع کرنے جا رہا ہے. اسے باہر پرنٹ کرنے کے لئے جا رہا ہے اس صف کے کے 0th انڈیکس. پھر یہ پرنٹ کرنے کے لئے جا رہا ہے پہلا عنصر باہر. پھر یہ پرنٹ کرنے کے لئے جا رہا ہے دوسرا باہر. اور پھر ہم کو توڑنے کے لئے جا رہے ہیں. پر سب واضح ہے کہ کس طرح ہو رہا ہے؟ عظیم. بالکل ٹھیک. تو یہاں ہم ایک طریقے سے کی ہے ہم چاہتے ہیں نہیں کیا تو، کہہ مشکل کوڈ کے پروگرامر کے طور پر مجھے in--. میں اصل میں جسمانی طور پر نہیں کرنا چاہتا تھا ہر فرد عنصر میں ڈال دیا اس صف کے. میں بجائے چاہتی تھی تو ، صارف کی ان پٹ اقدار ہیں ایسا کرنے کے لئے بہترین طریقہ کیا ہے؟ ٹھیک ہے، یہاں میں پیدا کیا ہے اس خوبصورت تقریب، جس میں ایک صف کا اعلان کر سکتے ہیں. چلو scores-- تو int صرف ہم بنانا چاہتے ہیں کا کہنا ہے کہ تمام 18 کے گریڈ منعقد کی ہے کہ ایک سرنی یہاں اس حصے میں طالب علموں کی. میرے خیال میں ہمیں تھوڑا سا مل گیا ہے لگتا ہے سے زیادہ 18 بچوں کو آج. لیکن مثال کی خاطر، صرف ہم 18 تھا فرض. میں کے ساتھ ایک صف کا نام سکور پیدا کرے گا قسم int، سکور کی وجہ سے، کورس کے، اعداد و شمار ہیں. اور میں جا رہا ہوں مربع بریکٹ میں 18، کہ ہے کیونکہ کتنے طالب علموں میں کے سکور ذخیرہ کرنے کے قابل بننا چاہتا ہوں. اور ویسے بھی میں آباد تھا صف میں تھا ہے ، کے لوپ کے لئے ایک کے ذریعے چلانے کورس، 0 میری کے 0th انڈیکس ہونے کے ساتھ. اور پھر 18 کیا جا رہا ہے میری کیونکہ وہاں، ایڈیشن روکنے صف میں 18 عناصر. اور پھر میں printf کیا کرنے جا رہا ہوں، درج طالب علم سے Yada ادار ادار لئے سکور. کسی میں ہوں یہاں کیوں مجھے بتا سکتے ہیں میں پلس 1 پرنٹنگ اور نہیں؟ یہ ایک چال کی طرح ہے سوال، سچ میں نہیں. یہ اصل میں جسمانی طور پر نہیں کرتا کوڈ کے چلانے پر اثر انداز. جی ہاں. سامعین: [اشراوی] 0؟ ANDI پینگ: جی ہاں، بالکل. ارے، کا کہنا ہے کہ تھوڑا سا عجیب ہے، آپ کو اس کلاس میں طالب علم ہیں کے 0th. یہ تھوڑا سا عجیب ہے. ہمیں، انسانوں کے طور پر، واقعی پسند نہیں کرتے کمپیوٹر لگتا ہے کہ کس طرح کے بارے میں سوچنا. تو بھی میں اگرچہ کمپیوٹر، یہ اقدار ذخیرہ ہے 0 ویں انڈیکس، جب میں ہم انسان ہیں، ہم واقعی نہیں صفر کے طور پر خود کی طرف رجوع کرنا چاہوں. تو میں صرف اس کو پرنٹ جب، میں پرنٹ اور شامل کرنے کے لئے جا رہا ہوں صرف وضاحت کی خاطر 1. میں پرنٹ تو، میں جا رہا ہوں 18 کے ذریعے طالب علموں 1 پرنٹ کرنے کے قابل. یہ اصل میں اثر انداز نہیں کرتا کوڈ کے چلانے کسی بھی طرح سے، راستے میں پرنٹ. تم جب لیکن ہوشیار رہنا اصل میں صف تک رسائی حاصل. آپ سکور میں دیکھتے ہیں تو، یہاں محسوس میں واقعی میں ہوں کے 0th انڈیکس تک رسائی حاصل کرنے اور نہیں 1 پلس 0-- یا 1 پلس 1، اس صورت میں، انڈیکس تو کہ یہ اصل میں واضح ہے. سب قسم کی ٹھیک ہے کس طرح اس کے ذریعے چل رہا ہے اور ہر انڈیکس کے ساتھ ہوں سرنی میں ایک قدر ڈال اور 18 کی تعداد کے ساتھ ایک سرنی پیدا کرنے صارف کی ان پٹ کے لئے جا رہا ہے؟ ٹھیک ہے. ٹھنڈا. ٹھیک ہے. اب ہم خوبصورت ہے کہ کچھ میں منتقل کے طور پر اچھی طرح سے قائم اس مضمون کے لئے متعلقہ. میں لیکچر میں جانتے ہیں، David-- معذرت، آپ کو ایک سوال تھا؟ سامعین: تم نے اسے وسعت کر سکتے ہیں؟ ANDI پینگ: جی ہاں، تو میں نے کوشش کی. لیکن مجھے پتہ نہیں ہے. کسی وجہ کے لئے، اس پاورپوائنٹ کے ورژن واقعی کام نہیں کر رہا اچھی کارکردگی کے ساتھ. تو ہم صرف جا رہے ہیں اس طرح رکھنے کے لئے. ان تمام آن لائن اپ لوڈ کیا جائے گا. معذرت، لڑکوں. جی ہاں. ٹھیک ہے. تو ہم بھی ڈور کر سکتے ہیں. تو اصل میں تم لوگوں کو میں نوٹس تو روب کہ درس میں اس سے زیادہ چلا گیا معلوم وہ ایک تار اصل میں ہے کہ did-- صرف حروف کا ایک صف، آپ اس کے بارے میں سوچتے ہیں تو، ٹھیک ہے؟ ایک تار ایک نام یا ہے جملہ یا ایک لفظ، ٹھیک ہے؟ میں نامی ایک سٹرنگ تخلیق کرنے کے لئے تھے Andi-- صرف میرا نام، ایک ن-D میں. آپ کو صرف ایک متغیر کے طور پر اس کے بارے میں سوچنا. لیکن اصل میں، یہ ٹوٹ گیا ہے حروف کی صرف ایک صف میں. تو یہ ایک کردار کی ہے ایک ایک صف قیمت میں ذخیرہ. اس میں ذخیرہ (ن) کے ایک کردار ہے دوسرے انڈیکس اور تو اور تو آگے. ہم اس طرح تو اصل میں اس قسم کی ہے ساخت کی میں مقرر ہماری ڈور کے لئے جگہ. تو یہاں، میں ان پٹ کرنے کے لئے تھے تو لفظ "کھا" - تو سٹرنگ لفظ برابر تار ملتا ہے. میں ان پٹ کرنے کے لئے تھے تو لفظ "، کھانے کہ" کہ میرے کمپیوٹر راستہ جسمانی ہے میری یاد میں اس سٹرنگ ذخیرہ کرنے کا ہے. اور میں اس کے ذریعے چلانے کے لئے کرنا چاہتا تھا تو اور میں میں کے لئے بہت out-- کہ پرنٹ ہم درس میں، یاد، صفر کے برابر strlen کی کہا جاتا ہے کہ احاطہ کرتا ہے کچھ، یا سٹرنگ کی لمبائی. میں اصل میں نہیں ہے کیونکہ صف ہے کس طرح بڑی جانتے جو کچھ بھی صارف کے inputting-- کے مثال کے طور پر، میں inputted کے لفظ "، کھانے" اور مجھے پتہ یہ ٹھیک ہے، تین حروف طویل ہے؟ تو میں وہاں تین میں ڈال سکتا ہے اور سب کچھ ٹھیک ہو جائے گا. لیکن آپ صارف کی ان پٹ کچھ تو کہ اقدار کی ایک مختلف نمبر ہے، تم سچ میں کرنے کے قابل نہیں کے لئے جا رہے ہیں آپ اپنے کوڈ پروگرام جب جانتے ہیں کہ. تو ہم ٹیسٹ کے مقدمات کو ہینڈل کہ راستہ اس طرح ہم کچھ ہے صرف ایک تقریب ہے جس، strlen کی ملاقات وہ ایک تار ہے کتنی دیر تک آپ کو بتاتا ہے. تو لفظ کے بھی strlen. میرے کلام کھا ہے. N لفظ کے strlen کی برابر. کوئی ہے کہ مجھے بتا سکتے ہیں قیمت اصل میں وہیں ہے؟ N کیا حق کی نمائندگی کرتا اب، اس مثال میں، میں تھا تو کھاتے ہیں؟ سامعین: 3. ANDI پینگ: 3، بالکل. int میں برابر کے لئے تو ہم صفر، (ن) بنیادی طور پر، 3 برابر. اور میں چلاتے ہیں کی جا رہی ہے یہ 3I + + کے مقابلے میں کم ہے جب تک. اور یہ بنیادی طور پر جانے کے لئے جا رہا ہے اور کے ذریعے ایک ہی بات کروں. اسے باہر پرنٹ کرنے کے لئے جا رہا ہے ہر قیمت اور آپ کو دے ای-اے-ٹی. یہ صرف ایک denoting کے ہے یہ لکھنے کے مختلف طریقے. یہ بہت مددگار ثابت ہو رہا ہے. جی ہاں. سامعین: ڈالنے کے فوائد کیا ہے (ن) اس کے اندر strlen کی لفظ کے برابر ہے [اشراوی] لوپ کے لئے؟ ANDI پینگ: جی ہاں. لہذا میں نے کا کہنا ہے کہ to-- تھے تو، مثال کے طور پر، میں تھے تو ایسا کرنے کے لئے ، اپنے کوڈ میں، کہ یہ کرے گا oop-- do-- اصل میں ایک ہی چیز کی طرح کر رہے ہو. تاہم، طریقہ ڈیوڈ وضاحت کی ہے کہ یہ لیکچر کے دوران، اگر آپ لوگوں میں سے کوئی یاد، تھا، کے طور پر اس انسانوں، پروگرامرز کے طور پر، ہم واقعی ہمارے پروگرام کرنے کی کوشش کریں کوڈ ہمارے کمپیوٹر ہے تاکہ لہذا، ہر ممکن حد تک کم سے کم کام کرنے کے لئے کہ ہمارے کوڈ بہت موثر ہے. تو میں نے اس سے کیا تھا تو میرے لئے لوپ کے ذریعے ہوگا میں سب سے پہلے ایک اعلان تھا کہ ہے متغیر نام میں 0 ہونے جا رہا ہے. میں، اوہ، چیک کرنے کے لیے جا رہا ہوں لفظ کے strlen کی کیا ہے؟ اوہ، strlen کی 3. تو میں نے تین کے مقابلے میں کم ہے؟ ہاں یہی ہے. میں چلانے کے لئے جا رہا ہوں. اور پھر دوسری بار پیچھے کے ارد گرد لوپ، میں میں اضافہ کرنے جا رہا ہوں. میں ایک ہونے جا رہا ہے. اور میں، اوہ، کی جانچ پڑتال کی جا رہی ہے لیکن لفظ کے strlen کی کیا ہے؟ اوہ، یہ تین ہے. اور، قسم کے بیکار لگتا ہے کہ کرتا ہے آپ کو لوپ کے ذریعے چلاتے ہیں ہر وقت، تقریب کی جانچ پڑتال کی جائے گی، یہاں تک کہ لفظ کے strlen کی اگرچہ واقعی بدل کبھی نہیں؟ تو یہ ایک کمپیوٹر کے لئے اضافی طاقت ہے. آپ چیزوں کے بارے میں بات شروع کرتے ہیں اربوں اور اربوں سے ہیں کہ اور مقامات کے اربوں طویل، آپ کے کمپیوٹر کا تصور جسمانی ذریعے جانے کے لئے اور کہ ہر ایک وقت کی جانچ پڑتال. یہی وجہ ہے کہ، صرف بنانے کے لئے ہے کارکردگی کی خاطر، ہم صرف ایسا کرنے کی کوشش کرتے ہیں کیونکہ ہم صرف ہو اس طرح تقریب کو بلا آغاز میں ایک بار، اور ہر وقت ہے کہ یہ یہ جا رہا ہے کے ذریعے جاتا ہے قدر ذخیرہ کرنے کے لئے 3 وہاں، آپ کو ایسا نہیں ہے کہ مسلسل ہر وقت کی جانچ پڑتال کرنے کے لئے ہے. جی ہاں. سامعین: معذرت. صرف [اشراوی]. آپ int ن strlen کی برابر ہے اور ڈال کر سکتے ہیں کہ لوپ کے لئے سے باہر اوپر اس کے ساتھ ساتھ؟ ANDI پینگ: جی ہاں. تم بالکل، ایسا کر سکتا ہے. ہم یہاں میں ہے کی وجہ سے ہے کیونکہ لوپ کاموں کے لئے طریقہ یہ کہا جاتا ہے ہے کہ ایک معنوں میں مقامی متغیر تم کہ سب کچھ لوپ کے لئے کے اندر پیدا کرنے صرف لوپ کے لئے کے اندر موجود ہے. تو متغیر میں صرف ان بریکٹ میں موجود. بھی (ن) کے اور یہاں متغیر صرف ان بریکٹ میں موجود. تو تم میں سے strlen کی استعمال کرنے کے لئے تھے تو نیچے ایک سے زیادہ مرتبہ لفظ، بالکل ایسا کرنے کا بہترین طریقہ سب سے یہ اعلان کرنے کے لئے ہو جائے گا لہذا آپ کو ایک بار ایسا کرنے کی ضرورت نہیں. جی ہاں. سامعین: کیوں آپ کو ایک ہے فیصد کے بعد نئی لائن آپ سب کو ڈال کرنا چاہتے ہیں تو دیکھ الگ کرنے کے لئے اگلے خط؟ ANDI پینگ: اوہ، میں چاہتا تھا ہر سطر پر ان سب کو پرنٹ. اس سے کوئی فرق نہیں ہے. جی ہاں، یہ ایک فارمیٹنگ ہے. تاہم، ایک اچھا سوال ہے. میں چاہتا تھا تو جی ہاں، پرنٹ کرنے کے لئے یہ صرف ایک لائن پر تمام، میں ڈیش نہیں پڑے گا. ٹھیک ہے. سب اچھا ہے؟ ٹھیک ہے. ٹھنڈا. تو میں نے کافی بات ہے لگتا ہے کہ. تم لوگوں کی باری ذریعے چلانے کے لئے کوڈ اور یہاں غلط ہے مجھے بتاو. بگ کہاں ہے؟ آپ دیکھ سکتے ہیں کے طور پر تو، میں ایک کا اعلان کر دیا قسم سٹرنگ نامزد کلاس کی نئی صف. اور میں، سیم inputted کے ہے اس میں جیس، اور کم. اور میں باہر پرنٹ کرنے کے لئے کوشش کر رہا ہوں صف کے تمام عناصر. یہ کیوں کوئی مجھے بتا سکتے ہیں مجھے مسائل دینے جا رہا ہے؟ میں نے لوگوں کو آپ کو 10 دے دونگا سیکنڈ اس کے بارے میں سوچنے کے لئے. ٹھیک ہے. جی ہاں؟ سامعین: بائیں سینٹر 3 کے برابر یا [اشراوی]؟ ANDI پینگ: دائیں. تو یہ اصل میں کتنی بار ہے اس لوپ کے ذریعے چلانے کے لئے جا رہے ہیں؟ سامعین: چار. ANDI پینگ: بالکل. یہ چار وقت کے ذریعے جا رہا ہے. اس کے ذریعے چلانے جا رہا ہے 0، 1، 2، اور 3 میں، ان کے عنصر میں ہے کیونکہ سے کم یا 3 کے برابر ہے. یہ 2 ہے جب کو روکنے کے لئے نہیں جا رہا ہے. رکھنے کے لئے جا رہا ہے یہ 3 مشاہدات تک جا. ہم جانتے ہیں کے طور پر، صرف تین ہے ہماری اصل صف میں عناصر. ہم چوتھی تک رسائی حاصل کرنے کی کوشش کرتے ہیں عنصر یا 3 میں انڈیکس، آپ کو کہیں کو نشانہ بنانے جا رہے ہیں یاد میں کوئی وجود نہیں ہے. یہ شہوت انگیز null مختتم کہا جاتا ہے. وہاں کچھ نہیں ہونے جا رہا ہے. آپ کے کمپیوٹر نہیں جا رہا ہے تم سے بہت خوش ہونا. جی ہاں. کسی سوال ہے یہی وجہ ہے کہ کیا ہو رہا ہے؟ اس سے بچنے کے لئے ایک عام علاقے ہے. جی ہاں. سامعین: سب سے پہلے نہیں ہے 2 کی ایک تار ہے بھی سلائڈ؟ ANDI پینگ: نمبر تو بنیادی طور پر، جب آپ کو ایک صف کر رہے ہیں، کہ بریکٹ دائیں وہاں، تمام نمبر کا کہ یہ آپ کو ہے کہ کس طرح سے کہہ رہا ہے بہت سے عناصر میں ہے. یہ اصل میں نہیں بتا رہی ہے مجھ سے کچھ کے اشاریہ جات. تو اس معاملے میں، میں چاہتا ہوں جانتے ہیں تین مقامات کے ساتھ لکھنے کے لئے، سے تین جسمانی مقامات کے ساتھ میں منعقد کرنا چاہتے ہیں جو کچھ بھی منعقد. نمبر تین ہے یہی وجہ ہے کہ. تاہم، اگر میں چاہتا تھا اصل میں اس تک رسائی حاصل کرنے کے لئے، میں کہنا چاہتا تھا تو، printf کے پھر کلاس بریکٹ تعداد، آپ اصل میں ڈال کرنے کے لئے جا رہے ہیں وہاں جسمانی انڈیکس. جی ہاں، اچھا سوال ہے. سامعین: تو جسمانی ہے انڈیکس چاہیے [اشراوی] ہو؟ ANDI پینگ: میں معافی چاہتا ہوں. آپ کو تھوڑا سا بات کر سکتے ہیں؟ سامعین: تو جسمانی انڈیکس ہے [اشراوی] خانوں میں سے ہر ایک؟ [اشراوی]؟ ANDI پینگ: جی ہاں. تو میں یہیں پر واپس جانے کے لئے جا رہا ہوں. یہیں کے بارے میں سوچو. ہم سائز 3 کے ایک صف ہے. کی طرح، تین مقامات پر موجود ہے، یہاں میں جسمانی جگہ دار. لیکن وہ 0، 1، اور 2 نام کر رہے ہیں. میں ان تک رسائی حاصل کرنا چاہتے تھے تو، میں ان تک رسائی حاصل ہے کہ جس طرح میں یہاں چاہتا تھا جو کچھ بھی printf کا ہے. آپ کو پرنٹ کرنا پڑے گا اس کا نام باہر، پھر کمپیوٹر کیونکہ اوہ، میں دیکھنے کی ضرورت ہے، جانتا ہے کے 0th انڈیکس کے لئے اس صف میں. جی ہاں. لیکن اس کے سائز کو تبدیل نہیں کرتا. سائز سے قطع نظر، 3 آپ ان کے لیبل کس طرح کی. ٹھیک ہے. سب اچھا ہے؟ سامعین: تو ہر وقت میں [اشراوی]؟ ANDI پینگ: ٹھیک ہے. تو اس صورت میں، ہم واقعی نہیں کورس میں ابھی اس میں حاصل. لیکن جانتے ہیں کہ میں نے ایک تار ایک تار بنیادی طور پر ہے، پہلے کہا حروف کی ایک سرنی. میں ایک صف بنا تو ڈور کی، میں اس قسم کی صف کے ایک صف ہے حروف کی، ٹھیک ہے؟ تو اس صورت میں، میں نے کی وجہ ، ڈور کی ایک صف ہے آپ کو ان پٹ کے لئے ایک بہت طویل کلام تھے تو، اب بھی، صرف ایک جگہ لیتا ہے کہ ایک سٹرنگ ہے کیونکہ. لیکن تم تھے تو کے بارے میں سوچنا اس صف کے حروف، پھر اس سے زیادہ ایک بہت لے جا رہا ہے دوسرے الفاظ میں سے کسی سے حروف ہیں. اب کے لئے بہت ضروری ہے. لیکن یہ صرف عام طور پر ہے یہ کس طرح کام کر رہا ہے. ٹھیک ہے. تو اس میں آپ کو ایسا کرنے کی اجازت گا کچھ ہے سمسٹر کے دوران ایک بہت. میں اپنی آواز آرام کی ضرورت ہے. تم لوگ اپنے آپ کو حوصلہ افزائی کرنے کی ضرورت ہے. تم میں سے ایک بہت شاید اب سونا ہوگا. میں بے ترتیب مسائل inputting کی ہوں جہاں ہم نے ایک طبقے کے طور پر یا آپ کو ایک ساتھی کے ساتھ آپ کے لئے اگلے جا رہے ہیں بحث ایک جوڑے منٹ خرچ کرنے کے لئے ہم کو حل کرنے کے بارے میں جانے گا کہ کس طرح یا اس طرح کے طور پر ایک پروگرام کی تشکیل. تو اب، ہم چاہتے ہیں ایک پروگرام بنانے کے لئے ہم اسے فون کرنے جا رہے ہیں upper.c-- بدلتا ہے ایک اعلی طبقے کے لئے ایک چھوٹے لفظ تار بڑے، معذرت. کلام ڈور میں، افسوس، مترادف ہے. میں ان کو تبدیل کرنے جا رہا ہوں ایک ہی بات کا مطلب. جی ہاں. منٹ کے ایک جوڑے لے. یہ ہو کی ضرورت نہیں ہے کسی بھی زبان میں لکھا. بس pseudocode کے کوڈ میں یا منطقی طور پر کس طرح ہم بھی کریں گے اس طرح ایک مسئلہ کرنے کے بارے میں جانا. جی ہاں. [ضمنی گفتگو] میں نے تم لوگوں کو can-- محسوس کیا ہے کہ میں اس قسم کے پہلے پروگرام دیکھیں. میں میری کمی لگتا ہے پرستتکرتا موڈ ایک مسئلہ ہے. لیکن یہ ٹھیک ہے. [ضمنی گفتگو] لوگ، براہ مہربانی، جی ہاں. کینڈی حاصل آو. کینڈی حاصل آو. سامعین: جی ہاں! [ضمنی گفتگو] ANDI پینگ بھی، جی ہاں، میں کینڈی پھینک شروع کریں گے سوالات کا جواب نہیں ہے جو لوگوں پر. آپ سب جواب سوال چاہئے تاکہ. یا میں نے لوگوں کو جو فرض سوال کا جواب ہے. جی ہاں، دوسرے طریقے کے ارد گرد. [ضمنی گفتگو] سامعین: [اشراوی] ANDI پینگ: جی ہاں. جی ہاں. [ضمنی گفتگو] ٹھیک ہے، لوگ. ، کی طرح، مزید 10 سیکنڈ لگ. [ضمنی گفتگو] لوگ، ٹھیک ہے. تو ہم کرنے کی کوشش کر رہے شروع کرنے سے پہلے اصل میں جسمانی طور پر، کوڈ لکھنے تیار کرنے کے لئے ایک اچھی عادت ہے ہم نے کی وجہ کی پہلی قسم کے لئے چاہتے ہیں باہر منطقی ہم ایسا کریں گے کہ کس طرح. آپ بات کو یقینی بنانا چاہتے ہیں، تم سے پہلے جسمانی کوڈ کرنے کی کوشش شروع ماریو، کہ آپ کو یقین ہے کہ آپ آپ کے pseudocode ہے. اس کے ذریعے آپ کو لے جا رہا ہے کیا آپ کو ایسا بنانے کی ضرورت ہے جب آپ جسمانی طور پر، کہ بعد میں آپ کے پروگرام لکھنے، آپ کو غلطیاں پکڑنے کے لئے بہتر کر سکتے ہیں آپ کے کوڈ اور اس طرح چیزوں میں. تو ہم صرف شروع کرنے کے لئے جا رہے ہیں by-- انگریزی میں، pseudocode میں، کسی کو دینے کے لئے چاہتا ہے مجھے ایک عام وضاحت ہم یہ کر کے بارے میں جائیں گے کس طرح؟ جی ہاں. سامعین: [اشراوی]. ANDI پینگ: ضرور، کوئی تشویش نہیں. سامعین: آپ کو یہ پوچھنا یا پوچھ سکتا کسی، سٹرنگ 1-- ہاں، سٹرنگ حاصل کرنے کے لئے اور پھر-- ANDI پینگ: جی ہاں، تو یہ ایک اچھا آغاز ہے. میں آپ کی بات کے طور پر، معذرت، ٹائپ کرنا شروع کریں گے. So-- سامعین: --the چھوٹے تعداد میں زیادہ ہیں، ٹھیک ہے؟ یا چھوٹے حروف اعلی نمبروں ہے؟ ANDI پینگ: بالکل. سامعین: تو پھر ہم منہا جو کچھ بھی [اشراوی] 32. ANDI پینگ: عظیم. تو ہم اس قسم کی ایک عام احساس ہے کس طرح اس مسئلے کے بارے میں کام کرنے کے لئے. ہم اس قسم کی سیکھا ہے کہ سب کچھ جاننے والا کہ ڈور جسمانی طریقہ میموری میں محفوظ کیا جاتا، پہلے سے جو تم کرتے ہو آپ کو شاید کرنے کے لئے جا رہے ہیں جانتے ہیں کہ آپ کے کوڈ میں لکھنے کے لئے ہے ترتیب میں سٹرنگ کے ذریعے منتقل کرنے کے لئے؟ سامعین: لوپ کے لئے. ANDI پینگ: لوپ کے لئے ایک، بالکل. عظیم. تو ہم اس قسم کی ایک عام ہے pseudocode کے نیچے لکھا اس قسم کے دے رہا ہے آپ کس طرح نوٹ مسئلہ کو حل کرنے کے بارے میں منتقل کرے گا. اب آپ یہ ہے کہ، آپ بعد کے لئے یہ حوالہ کر سکتے ہیں آپ کرنے کی کوشش کر رہے ہیں جب پر اصل میں آپ کے کوڈ لکھنے. تو ہم اصل میں یہاں جا سکتے ہیں. اور میں نامی ایک تقریب مل گیا ہے upper.c-- وہاں یہ صرف ایک خالی سانچے کے is-- اب آپ لوگوں کے لئے جا رہے ہیں مجھے لکھنے کے لئے کس طرح پتہ لگانے میں مدد نہیں کوڈ کی لائن کوڈ کے اس لائن. یہ کوڈ کا ایک سے زیادہ لائنوں ہو جائے گا. کسی بھی قسم شروع کرتے ہیں خالی pset کے، کیا ہے مجھے اس کی ضرورت سب سے پہلی چیز ایسا کرنے کے لئے یاد کرنے کے لئے؟ سامعین: [اشراوی]. ANDI پینگ: عظیم جی ہاں. شامل. stdio.h کی. اکثر اس میں سے ایک ہے سب سے زیادہ آسان غلطیوں لوگوں وہ جب دے گا ، تحریری طور پر وہ گا ہے ایک کو شامل کرنا بھول انہوں نے کی ضرورت اہم لائبریری. لہذا، یہ دفتری اوقات ہے اور آپ کی طرح ہیں میرا کوڈ کام نہیں کرتا کیوں مجھے نہیں معلوم. آپ یہ کام نہیں ہے کیوں مجھے بتا سکتے ہیں؟ ہم آپ کو # شامل کیا کہنے جا رہے ہیں؟ تم نے اسے نے # چاہئے. ٹھیک ہے. تو ہم یہاں معیاری I / O ہے. ہے کہ صرف لائبریری ہم یہاں ضرورت کے لئے جا رہے ہیں؟ اور کیا ہم کیا کرنے جا رہے ہیں؟ معذرت. کسی کو صرف اسے باہر چللاو؟ سامعین: [اشراوی]. ANDI پینگ: تم وہاں جاؤ. ٹھیک ہے. اور کس طرح میں کسی بھی قسم شروع کرنے کے بارے میں جانا اہم تقریب کی تقریب کے، کسی بھی قسم کی ہمارے پروگرام کے اندر اندر؟ int اہم. ٹھیک ہے. میں یہاں اندر کیا ڈال دیا کرتے ہیں؟ آپ کرنا چاہتے ہیں سب سے پہلی چیز کیا ہے؟ ہم نے ایک حاصل کرنے کے لئے چاہتے ہیں، تو صارف کی طرف سے سٹرنگ، جو ہم کرنے جا رہے ہیں اس کی پہلی سطر پر کرنا ہے؟ معذرت، تم لوگوں کو صرف محسوس بات کرنے کے لئے آزاد اور بلند آواز. بس جو کچھ بھی چللاو. سامعین: صارف سے پوچھو؟ ANDI پینگ: ہم کہ کس طرح کروں؟ Ask-- میں "صارف سے پوچھو" ٹائپ کرنے جا رہا ہوں؟ سامعین: printf کے. ANDI پینگ: ٹھیک ہے. printf کے. کیا میں printf کرنا چاہتے ہیں؟ سامعین: کچھ میں ٹائپ کریں. ANDI پینگ: اس طرح؟ میں نے ایک کمپیوٹر ہوں جیسے لوگ، دکھاوا. جسمانی طور پر مجھے ہر قدم بتا میں یہاں ٹائپ کرنے کی ضرورت ہے؟ میں نے کچھ غلط کر رہا ہوں؟ میں کچھ ٹائپ کرنا چاہیے تھا؟ سامعین: آپ کی قیمت درج کرنے کی ضرورت ہے. ANDI پینگ: میں کی قیمت درج کرنے کی ضرورت ہے؟ ٹھیک ہے. ٹھیک ہے. سامعین: اور پھر نئی لائن. نیم وقفہ. ANDI پینگ: نیم وقفہ؟ ٹھیک ہے. اچھا. سامعین: اور شاید وضاحت آپ اس چھوٹے میں کرنا چاہتے ہے؟ ANDI پینگ: عظیم. تم لوگ میرے پر ہنسنا ایک نیم وقفہ ڈال کرنے کے لئے بھول. میں کہیں آپ اس بات کی ضمانت اس کلاس کے دوران میں، آپ ڈال کرنے کے بھولنا گا ایک نیم وقفہ، اور یہ اعداد و شمار کرنے کے لئے آپ کو تین گھنٹے لگیں گے باہر کیوں آپ کوڈ کام نہیں کر رہا. یہ ہم سب کے لئے ہوا ہے. یہ شاید آپ کے ساتھ کیا ہوگا. سیمیکالن کا استعمال کرتے ہوئے ایک اچھی عادت میں حاصل کریں. ٹھیک ہے. سامعین: آپ چاہتے ہیں میں الٹا سلیش ہے؟ ANDI پینگ: ضرور. میں الٹا سلیش کرنا چاہتے ہیں؟ سامعین: جی ہاں. ANDI پینگ: عظیم. ٹھیک ہے. میں اگلے کیا کروں؟ سامعین: سٹرنگ حاصل. ANDI پینگ: سٹرنگ حاصل. تو میں کیا ٹائپ کرتے ہیں؟ کوئی؟ سامعین: سٹرنگ. ANDI پینگ: سٹرنگ. سامعین: GetString کے. ANDI پینگ: کوئی، آپ مجھے بتا سکتے ہیں جہاں اس تقریب GetString سے آ رہا ہے؟ سامعین: string.h کے. ANDI پینگ: string.h کے؟ تم نے اسے string.h کے سے لگتا ہے؟ سامعین: [اشراوی]. ANDI پینگ: تم وہاں جاؤ. یہ CS50.h. سے ہے آپ کو ہمیشہ جہاں پر الجھن میں کر رہے ہیں لائبریری فائل ہے یا ایک ہیڈر فائل ہے، گوگل لفظی، string.h کے اور میں آپ کو بتا دونگا تمام افعال ہیں string.h کے میں ہیں. ٹھیک ہے. تو اب میں ایک تار پیدا کیا ہے کہ اور میں اس کے لئے صارف کو فوری طور ہے، میں ایک متغیر میں محفوظ کیا جاتا ہے نام کی، کیا اب میں کیا کرنے کی ضرورت ہے؟ سامعین: یہ چھوٹے میں ہے تو چیک کریں. ANDI پینگ: معاف کیجئے گا؟ سامعین: یہ چھوٹے میں ہے تو چیک کریں. ANDI پینگ: ٹھیک ہے، یہ کرتے ہیں. مجھے لگتا ہے کہ کس طرح کروں؟ اصل میں، کے مقاصد کے لئے اب طبقے کی، ہم صرف کرنے کے لئے جا رہے ہیں کہ سب کچھ فرض کہ ہم ان پٹ کے چھوٹے میں پہلے سے ہی ہے. آپ کی جانچ کرنا چاہتے ہیں تو، آپ کو کرے گا صرف ایک مشروط بیان شامل جانچ پڑتال کی ہے کہ، کے ذریعے بھاگ گیا ہے کہ ہر ایک سرنی عنصر یہ ہے تو جانچ پڑتال بعض اقدار کے درمیان. میں بھول کیا تعداد چھوٹے اقدار کے ہیں. آپ ASCII میز پر دیکھ سکتے ہیں. لیکن ہاں، کہ واقعی ایک اچھی بات ہے. لیکن اب، ہم صرف کرنے کے لئے جا رہے ہیں کہ تمام ڈور فرض ہم ان پٹ چھوٹے میں ہیں. ٹھیک ہے. تو میں نے کے بارے میں کیسے جائیں گے اگلے اس مسئلہ ہے؟ سامعین: لوپ کے لئے. ANDI پینگ: لوپ کے لئے؟ ٹھیک ہے. کس قسم مجھے بتاو. سامعین: int کے لئے میں 0 کے برابر ہے. ANDI پینگ: ٹھیک ہے. سامعین: اوہ، اصل میں، اس کے بعد آپ کوما کرتے ہیں اور (ن) بھی strlen برابر. ANDI پینگ: تو اہم بات یہ ہے مجھے لگتا ہے وہ یہاں محسوس ہے لگتا ہے کہ ہم int کہنے کی ضرورت نہیں کیا ہے N دوسری بار ہم نے یہ کیا. بس کے لئے ایک میں جانتے ہیں کہ آپ اعلان کر رہے ہیں جب لوپ، آپ اصل میں INT ضرورت نہیں ہے دوسری بار آپ کو ایک متغیر ہے. تم (ن) strlen کی کہہ سکتے ہیں. سامعین: ے. ANDI پینگ: S. ٹھیک ہے. سامعین: تو ایک نیم وقفہ. ANDI پینگ: ضرور. سامعین: اور پھر [اشراوی] ن. پھر میں + +. ANDI پینگ: عظیم. بالکل ٹھیک. ہم اندر کیا چاہتے ہیں اب لوپ کے لئے اس کی وجہ سے؟ ہم کے ذریعے چلانے کے لئے جا رہے ہیں تو، یاد رکھیں ایک سٹرنگ اور ایک صف کے ذریعے چلانے کے ہم اس میں موجود چیزوں کی جانچ کرنا چاہتے. کیا ہم ضرورت کے لئے جا رہے ہیں؟ یہ اب مشکل حصہ کی طرح ہے. کوئی بھی ایک اندازہ ہے؟ ٹھیک ہے. تو سب سے پہلے، کہ کس طرح ہم بھی تک رسائی حاصل کرتے ہیں؟ کس طرح کرتے ہیں ہم بھی سب سے پہلے چیک کریں یا صف میں ایک عنصر تک رسائی حاصل؟ ہم اس کس طرح کروں؟ ہم ایسا کرنے کے لئے استعمال سنکیتن کیا ہے؟ اس صف کا نام کیا کہا جاتا ہے؟ یہ درست ہے، کہا جاتا ہے؟ کسی بھی سٹرنگ ہمیشہ ایک صف ہے، یاد رکھیں. تو بریکٹ میں، ٹھیک ہے؟ کہ موجودہ قیمت ہے یا انڈیکس قدر ہم جانچ پڑتال کر رہے. اور ہم اس کے برابر مقرر کرنے جا رہے ہیں to-- ہم صحیح، ایک چھوٹے قیمت چاہتے ہیں؟ ہم نے اس کو تبدیل کرنے کی چاہتے ہیں lower-- افسوس ہے، ہم ایک بڑے چاہتے ہیں. ہم چھوٹے تبدیل کرنے کے لئے چاہتے ہیں ایک بڑے میں قدر. اور مجھے معاف تو like--، تمہارا نام کیا ہے؟ سامعین: ہائیڈی. ANDI پینگ: معاف کیجئے گا؟ سامعین: ہائیڈی. ANDI پینگ: ہائیڈی. ہائیڈی کہا ابتدائی طور پر، ہم شاید ہو ہم ہیں the-- ضرورت کے لئے جا شاید منہا کرنے کے لئے جا ، درست ہے کہ جو کچھ بھی charc سے 32؟ ایک ASCII کیونکہ میز، فرق ایک چھوٹے خط کے درمیان اور ایک بڑے خط 32 ہے. ہم یہ کر رہے ہیں جب تو، ہم شاید ہو صحیح، 32 منہا کرنا چاہتے ہیں جا رہے ہیں؟ تو ہم ے میں کیا کرنے جا رہے. مجھے لگتا ہے کہ کیوں ہر کوئی سمجھ ہے؟ صحیح کیونکہ اب، ہمارے صف میں، ہم کے 0th انڈیکس جانچ پڑتال کر رہے، ٹھیک ہے؟ اور کے 0th انڈیکس میں سٹرنگ، کہ سب سے پہلے کردار ہے. اور یہ کہ کردار ہم جا رہے ہیں یہ خفی ہے فرض. ہم اس بڑے بنانا چاہتے ہیں تو، ہم اس کی قیمت سے 32 منہا کرنا پڑے، ہماری ASCII کی وجہ میز، کہ ہم اسے حاصل کرنے کے لئے کس طرح ہے اسی اگلے کرنے کے لئے یہ بڑے ہے کہ قیمت. ہر کوئی اس کو سمجھنے ہے؟ جی ہاں. سامعین: آپ کو بھی سکتا ایک minus-- خفی کرتے ANDI پینگ: جی ہاں، تو ہے واقعی بہت اچھا. مجھے لگتا ہے کہ کرنے کے لئے واپس آنے کے لئے جا رہا ہوں سوال ہم ایسا کرنے کے بعد. جی ہاں. اور پھر میں کرنا چاہتے ہیں تو ، کیا ہو رہا ہے کو دیکھنے کے میں شاید جا رہا ہوں ، صحیح پرنٹ کرنے کے لئے چاہتے ہیں؟ کوئی مجھے بتا کیا میں یہاں پرنٹ کرنا چاہتے ہیں. سامعین: printf کے فیصد C الٹا سلیش [اشراوی]. یہ [اشراوی] ے میں کی قدر ہے. ANDI پینگ: S میں، معاف کیجئے گا؟ سامعین: [اشراوی]. ANDI پینگ: مجھے نہیں معلوم. آپ کیا سوچتے ہیں؟ سامعین: ٹھیک ہے، میں wouldn't-- مجھے bring-- نہیں کرے گا لگتا ہے میں نے اسے باہر لے جائے گا اندر، کیونکہ [اشراوی]. ANDI پینگ: اوہ، تم نے اس سے کیا ہوتا ہے؟ سامعین: جی ہاں. ANDI پینگ: چلو اس کا راستہ چھوڑ دو یہ ہے، اور میں بعد میں کیوں وضاحت کریں گے. جب آپ سے بھی، یاد رکھیں ایک جگہ ہولڈر ہے، آپ اس کے ارد گرد قوسین ڈال کرنا چاہتے ہیں. بالکل ٹھیک. تو یہ یہاں ایک ٹھوس تقریب ہونا چاہئے. کی اسے چلاتے ہیں اور اسے آگاہ تو دیکھنے. اوپری بنائیں. اہ اوہ. وہ بھی اچھا نہیں لگتا. یہ کیوں ہو رہا ہے؟ کسی بھی غلطی کے ساتھ، آپ کو جانا چاہتے ہیں واپس اور سب سے پہلے ایک کے ساتھ شروع، عام طور پر ایک غلطی کی وجہ سے کی وجہ سے اس کے بعد دوسرے کی غلطیوں کے بہت سے. یہاں ہم upper.c دیکھیں: 18: 25، بتاتا ہے جو مجھے اس پروگرام میں، upper.c نام 18 لائن پر، خرابی لپیٹ اعلان افعال کی لائبریری کی قسم کے ساتھ بھی strlen unassigned-- بلاہ، مجھے پتہ نہیں ہے اس کے بعد کیا ہو رہا ہے. تمام یہ درست ہے اب مجھ سے ہے کہہ رہا ہے کہ کچھ strlen کی ہو رہا ہے. اور کمپیوٹر کی وجہ سے، الجھن میں ہے اس طرح، میں strlen کی ہے پتہ نہیں کیا ہے؟ کیا کہ شاید کرتا آپ کو یاد کر رہے ہیں آپ کو بتا؟ سامعین: آپ [اشراوی] یاد کر رہے ہیں. ANDI پینگ: تم ٹھیک کہتے ہو. بالکل. یہ تو یہ ہے جہاں بات کو یقینی بنانے کے لئے ضروری کہ آپ کو میں استعمال ہر تقریب میں آپ کی کوڈ درست ہیڈر چل رہا ہے اور لائبریری کے لئے فائل، یا آپ کو غلطیاں کے بہت سے حاصل کرنے کے لئے جا رہے ہیں اور آپ کے کوڈ نہیں جا رہا ہے کیا چل رہا ہے معلوم کرنے کے لئے. تو ہم یہاں string.h شامل کرنے جا رہے ہیں. اب ہم اوپری مرتب کرنے کی کوشش کریں جب. درست طریقے سے مرتب. اس پروگرام چلاتے ہیں. تو چھوٹے میں کچھ ٹائپ کریں. کیا تم لوگوں کو ٹائپ کرنا چاہتے ہیں؟ کچھ باہر چللاو. ٹھیک، چارلی صرف میں چلا گیا. ہم سے Charly کا نام ٹائپ کریں گے. چھوٹے میں Charly. اور امید ہے، امید ہے کہ، یہ ہے باہر چللاو اور تھوکنے جا رہا بڑے میں Charly. گرمیوں میں! سب کس طرح سمجھ ہے میں اس کو حل کرنے کے بارے میں چلا؟ طریقہ وہی ہے جو میں کر سکتا ہوں integers کے استعمال کر رہے ہیں جوڑتوڑ کچھ کو حل کرنے کے میں ڈور میں کرنا چاہتے ہیں، حروف اور integers کے کر سکتے ہیں کی وجہ سے اسی طرح کیونکہ میں محولہ کیا جا ASCII تعریفیں کی. اگر ایسا ہے تو، آپ کے نقطہ کرنے کے لئے واپس جانے کے لئے میں 32 کے بجائے یہاں ڈال کرنے کے لئے کرنا چاہتا تھا بڑے ایک کی طرح ایک چھوٹے مائنس کہ، کہ، کے ساتھ ساتھ یکساں طور پر کام کریں گے کہ ہے کیونکہ بس ان دو اقدار کے درمیان فرق. میں اس again-- چارلی بنانا چاہتے ہیں تو. ارے نہیں. میرے خیال میں ہمیں ہاں، غلط طریقے سے چلا گیا لگتا ہے؟ سامعین: [اشراوی] ایک چھوٹے. ANDI پینگ: تم وہاں جاؤ. جی ہاں. اور باہر سے Charly تھوکتا ہے. تو کرتے وقت محتاط رہیں آپ اقدار تفریق کر رہے ہیں ایک ہے جس کو یاد کرنے دوسرے کے مقابلے میں زیادہ سے زیادہ. مثال کے طور پر، یہاں میں بھول گیا کہ چھوٹے ایک اصل ہے بڑے اے کے مقابلے میں زیادہ تو جب میں ان دوسرے طریقے منہا کرنے کی کوشش کی کے ارد گرد، میں منفی 32. اور میرے کمپیوٹر، کی طرح تھا مجھے لگتا ہے کہ ہے کیا نہیں جانتے. یہ صرف کچھ بے ترتیب امکان ہے بہت اچھا نہیں ہے اس قدر. اور اس طرح تم اس بات کو یقینی بنانے کے صحیح لمبائی میں تفریق آپ چاہتے ہیں کردار تلاش کرنے کے لئے. ٹھیک ہے. کسی ہم کس طرح پر الجھن میں ہے اس تقریب لکھنے کے بارے میں چلا گیا؟ ٹھیک ہے. تو اصل میں، ایک تقریب میں پہلے ہی لائبریری بلایا ctype.h میں موجود. لائبریری کے بلایا ctype.h ہے. اس تقریب اصل میں ہے پہلے سے ہی آپ کے لئے لکھا گیا. یہ اوپری کرنے کے لئے کہا جاتا ہے. اور اس طرح کے مقاصد کے لئے اس pset، تم جا رہے ہو تم واقعی میں استعمال کرنا چاہتے ہیں تلاش کرنے کے لئے موجود افعال میں سے ایک بہت کچھ ctype لائبریری کے اندر اندر. ، کم کرنے کے لئے، اوپری اوپری ہے، ہے lower-- ان تمام افعال ہیں آپ کو بہت استعمال کرنے کے قابل ہو جائے گا کہ، بہت جلد آپ کے اپنے کوڈ میں یہ کرتا ہے بالکل وہی جو کرتا ہے. ہم تبدیل کرنے کے لئے کس طرح لکھا ایک تار بڑے کو. لیکن یہ اصل میں کوڈ ہے کسی لکھا ہے کہ اور آپ تک رسائی حاصل کر سکتے ہیں ایک مختلف تقریب کے ذریعے. جی ہاں؟ سامعین: تو کیا تم صرف وہاں میں ایک کی نقل اور ہر ایک خط کے لئے یہ کرتے ہیں؟ ANDI پینگ: جی ہاں، میں ایسا نہیں کرتے کیونکہ ایک کی قیمت کے بارے میں پرواہ. میں صرف فرق یہ ہے کہ دیکھ بھال ان کے درمیان صحیح، 32 ہے؟ چھوٹے کے درمیان فرق ب اور بڑے بی نے 32. اور C کے درمیان فرق اور بڑے سی ہمیشہ 32 ہے. میں صرف کے بارے میں دیکھ بھال کرنا ہے دونوں کے درمیان فرق، حروف کی سب کی وجہ سے صحیح، اسی طرز پر عمل؟ میں فرق ہے تو ان میں سے ایک کے درمیان، مجھے معلوم ہے کیا فرق ان میں سے سب کے درمیان ہے. اچھا سوال. جی ہاں. سب اچھا ہے؟ ٹھیک ہے. OOP. ٹھیک ہے. تو ایک اور تصور ہے کہ آپ کے طور پر بہت مفید ہو جا رہا تیار کرنے کے لئے جاری آپ کے کوڈ اس کا خیال ہے کام کرتا ہے یا تجرید پیدا کرنے کے. تو اب، ہم سب الجبرا لیا ہے. الجبرا میں، تم وہاں ہے کہ سکھایا جاتا اس حیرت انگیز بات یہ ایک تقریب میں بلایا مشین، جہاں آپ تو تعداد کی ان پٹ ایک قسم، اس شاندار تقریب کے ذریعے چلتا ہے اور باہر صحیح، ایک مختلف پیداوار ٹمٹمانے؟ کوڈ میں، ایک ہی چیز ہوتا تقریب کی کسی بھی طرح میں. تو میں جسمانی طور پر کر سکتے ہیں میرا کوڈ کے میرے جسم میں لکھیں اصل میں ہے کہ ایک اہم بیان جو کچھ بھی کوڈ کے جسم کے کر رہا ہے. اس کے باہر لیکن، میں نے بھی کر سکتے ہیں بہت سے مختلف افعال کو لکھ کہ بہت سے مختلف چیزیں. مثال کے طور پر، ہم نے پہلے ہی ہے ان میں سے کچھ کا استعمال کرتے ہوئے شروع کر دیا. Printf-- کہ ایک ہے تقریب کہ کسی پہلے سے ہی لکھا ہے کہ ہم اپنے کوڈ میں کال کر سکتے ہیں. اس معاملے میں upper-- کرنے کے لئے، upper-- ایک اور تقریب ہے ہم اس نے لکھا ہے اپنے کوڈ میں کال کر سکتے ہیں. اور اس میں کیوں لگتا ہے ہم بھی کام کرتا ہے؟ کیوں ہم صرف اس plop یہ نہیں کوڈ کی ایک ہی لائن میں؟ یہ سب کے لئے آسان بناتا ہے. ویسے، اس کے پیچھے استدلال تنظیم، سب سے پہلے، ہے. یہ چل رہا واقعی پریشان کن ہے کسی کی کوڈ کے ذریعے اور printf طرح ایک تقریب. آپ لوگ اصل میں جانتا تھا تو کیا تقریب printf کے، لکھنے کے لئے کرناہے یہ کوڈ کا 1،000 لائنوں، کی طرح، ہے. تو میں چاہتا تھا ہر وقت کچھ printf سے، میں، کوڈ کی 1،000 لائنوں لکھنا تھا کہ، واقعی پڑھنے کے لئے پریشان ہو جائے گا ٹھیک ہے؟ ہم صرف ہے یہی وجہ ہے کہ یہ خلاصہ تقریب پیدا ہم کسی کو پہلے سے ہی ہے کہ اور کہیں اور لکھا ہے. اور ہر وقت ہے کہ ہم میں اس کا استعمال کرنے کی ضرورت ہے ہمارے کوڈ، ہم صرف printf کا کہنا ہے. اور اس تقریب کے استعمال کرنے کے لئے کے قابل ہے کسی اپنے کوڈ میں لکھا ہے. یہ آسان بنا دیتا ہے organizationally کوڈ کو پڑھنے کے. دوم، یہ آسان بنانے ہے. یہ ہم نے اقدامات آسان ہمارا مسئلہ حل کرنے کے لئے لینے کے لئے. printf کے، printf طرح کام کرتا ہے، اوپری کی طرح کام کرتا ہے کرنے کے لئے ہمیں اجازت دیتے ہیں کہ تمام چیزیں ہیں یہ آسان ہے تو نیچے اپنے کوڈ کو آسان بنانے. اور آخری بات reusability ہے. ہم حقیقت یہ ہے کہ تو ایک تقریب میں بلایا printf کے ہم نے بہت سے مختلف کال کر سکتے ہیں اوقات اور یہ دوبارہ پریوست ہو کی اجازت دیتا. میں printf لکھنے کے لئے تھے تو، میں صرف ایک بار اسے لکھ. یہ صرف کہ ایک ہی جگہ میں موجود ہے. میں اسے دوبارہ کرنا چاہتی تھی تو، میں کروں گا کاپی اور پیسٹ کرنے کی ہے کہ تمام ہے کوڈ کی میری دوسری لائن میں. ہم نے ایک تقریب تخلیق تو یہی وجہ ہے کہ کہ، ہمارے مرکزی کے باہر موجود ہم صرف پر کال کر سکتے ہیں اور اسے جب بھی دوبارہ استعمال ہم تو یہ ایک بہت آسان ہے کی ضرورت ہے ہمارے لئے پروگراموں کو لکھنے کے لئے کے طور پر. تو جس طرح ہم اصل میں لکھیں گے کہ ایک تقریب کا حق، بہت ملتا جلتا ہے؟ یہ پہلی کی طرح ہے مثال کے طور پر ہم کریں گے جس میں ایک سٹائل پر ایک تقریب لے دیکھیں ہمارے int اہم باطل سے مختلف. اس صورت میں، اگر میں چاہتا تھا صحیح، (ق) نامی ایک تقریب لکھنا؟ اور یہاں int قیمت تمام مجھ سے کہہ رہا ہے، میں اس کیا چاہتے ہو مجھے واپس کرنے کے لئے کام؟ میں ایک عددی کیوب کرنا چاہتے ہیں، میں ان پٹ کرنا چاہتے ہیں جا رہا ہوں. یہ پیرامیٹرز ہیں. میں قسم int کی قیمت آدانوں کرنے جا رہا ہوں. اور میں واپس جا رہا ہوں int کے دوسرے قسم کی قدر. اور یہاں، آپ کے طور پر تمام میں کر رہا ہوں دیکھ سکتے ہیں، میری ان پٹ ہے جو cubing ہے میرے پیداوار کے طور پر اور اس کے واپس لوٹنے. تو یہ سب تقریب ہے عددی کی کسی قسم لیتا ہے. یہ دو مرتبہ خود کی طرف سے اس سے multiplies تاکہ اس کے اثر میں کیوب. اور پھر اسے واپس جو کچھ بھی اس کی پیداوار ہے. تو اس صورت میں، اس کی دو لائنیں ہے ہم اضافی لکھنا تھا کہ کوڈ. لیکن ہم کہتے ہیں کرنا چاہتے تھے تو یہ ایک سے زیادہ بار صلی اللہ علیہ وسلم، یہ ہے کہ ایک قسم کے لئے ایک بہت آسان ہے سے کیوب میں ہے کہ یہیں لائن ایک سے زیادہ وقت کے ذریعے جانے کے لئے ہے. تو جس طرح کہ بنیادی طور پر کسی بھی تقریب کے کسی بھی قسم کے لئے فارمیٹنگ موجود جا رہا ہے یہاں کی طرح ہے. تو ہم تقریب کا نام ہے. اس صورت میں، یہ کیوب کہا جاتا ہے. اور ہم نے اسے کیوب کیونکہ نام یہ یاد رکھنا آسان ہے. تم نے اسے مربع نام کر سکتے ہیں اور یہ اصل میں cubed ہے کیا جا سکتا ہے. کوئی فرق نہیں پڑتا. آپ ہیں کہ صرف ایک نام آپ کی تقریب میں بتائے. یہاں یہ درست، INT، ہے آپ کی ضرورت پیرامیٹر کی قسم. تو اس تقریب کرتا ہے کام کرنے کے لئے کی ضرورت ہے؟ ٹھیک ہے، یہ ایک ان پٹ کی ضرورت ہے. میں ان پٹ اس کا نام. تم جو چاہو اس کا نام کر سکتے ہیں. لیکن میں قسم int کے بارے میں کچھ کی ضرورت ہے. یہ اصل میں پر عمل کرنے جا رہا ہے یہاں کے اندر جو کچھ بھی ہے، تقریب کے جسم. اور پھر واپسی کی قسم یہیں، اس int-- یہ سب مجھ سے ہے کہہ رہا ہے اس تقریب ہے int میں مجھ سے واپس جا رہا. تو یہ ایک int میں لے جا رہا ہے، اور یہ ایک int آپ کو واپس دینے جا رہا ہے. سب کس طرح سمجھ ہے اس قسم کی فارمیٹنگ کام کرتا ہے؟ ٹھنڈا. ٹھیک ہے. اس لگتا ہے تو فکر مت کرو اب تھوڑا سا خلاصہ حق. یہ ہم کے بارے میں بات کریں گے کہ کچھ ہے. ہم گہری میں کودو گے بعد میں کورس میں. طریقہ ہے کہ اعلی سطح کے کسی بھی طرح ان چیزوں کو کام کی تجرید ہے، یاد میں، میں آپ کے کمپیوٹر، سب کچھ اس قسم میں محفوظ کیا جاتا ہے اسٹیک کے، میں کہیں گے. وہاں سب سے اوپر تو. مجھے پتہ نہیں ہے اگر آپ لوگ کہ اچھی طرح دیکھ سکتے ہیں. میں زوم کرنے کے لئے کوشش کریں گے. یہاں سب سے اوپر، ہم جسمانی متن ہے کمپیوٹر interpreting-- کیا ہے تمام zeros اور ہیں کہ ہمارے کمپیوٹر کے اندر اندر موجود. اور پھر ہم سے initialized ہے اعداد و شمار اور غیر ابتدا شدہ ڈیٹا، کیا ہم عالمی متغیر کہتے ہیں. موجود ہے کہ متغیر تو تمام پروگراموں میں اور اپنے پورے بھر میں، بنیادی طور پر، کوڈ. کوئی تشویش نہیں تم لوگ ہیں قسم کی واضح اس پر. یہ درست اب واقعی کوئی فرق نہیں پڑتا. اور پھر ہم کیا ہے ایک اسٹیک میں ایک ڈھیر ملاقات کی. لفظی کے طور پر ایک اسٹیک کے بارے میں سوچو صرف چیزوں کی ایک اسٹیک کی طرح، مختلف کی ایک اسٹیک چیزیں سب سے اوپر پر دھکیل دیا جا رہا مختلف ذخیرہ ہے کہ ایک دوسرے کے آپ کے کوڈ کے اندر اندر متغیر اور نحو. اور پھر یہاں بہت نچلے حصے میں، ہم ماحول متغیر ہے آپ کے اندر اندر عمل کر رہے ہیں کیا کوڈ کے صرف اپنے چھوٹے لائن. اور ہم صرف زوم کرنے کے لئے جا رہے ہیں اصل اسٹیک حصے میں. ہم تھے تو یہیں، زوم کرنے کے لئے اسٹیک کے صرف اس علاقے پر، اس کی طرح لگتا ہے. اور یہ اصل میں بہت اہم ہے تم لوگ افعال کے بارے میں جب بات کرتے ہیں، کیونکہ نوٹس کہ آپ کے کمپیوٹر کی میموری متغیر ذخیرہ کرنے کا ہے اور افعال اور دونوں کی پیرامیٹرز آپ تقریب اور آپ کی اہم متغیر مختلف مقامات میں. تو اب، اہم ہے اصل تقریب آپ کو ایک کوڈ میں عمل کر رہے ہیں کہ. تم اس کے پیرامیٹرز یہاں محفوظ ہے اور اس کے مقامی متغیرات یہاں ذخیرہ. مقامی متغیر صرف کسی بھی متغیر کا مطلب کہ صرف اس تقریب کے اندر اندر موجود. اور اس کے سب سے اوپر پر، آپ کو اس ہے کہا جاتا کیوب علیحدہ تقریب. تم نے اس کے پیرامیٹرز ہے ہے کے ساتھ ساتھ ان مقامی لوگوں کے طور پر. کی وجہ سے اور آپ کر سکتے ہیں ہے یہاں دیکھ کر کیا کیوب ایک میں لیتا ہے تو کیا ہوتا آپ کی اہم تقریب سے قدر اصل میں یہ اس سے زیادہ کاپی ہے کہ ہے. میں کیوب کرنا چاہتے تھے تو 2 اور 8 واپس، 2 اصل میں inputted کے ہے ایک پیرامیٹر کے طور پر اور یہ آپ یہ موجودہ ہے کہ اس سے زیادہ کاپی یاد میں دو مختلف جگہوں پر. اور آپ کو بہت ہوشیار رہنا ہوگا یاد پر وہ لوگ جو ایک آپ اصل میں توڑ رہے ہیں. اور کیا ہوا کی ایک مثال کہ بہت، بہت برا ہو گا یہیں موجود. تو یہیں، مجھے وہ مل گیا ہے، اصول میں، یہیں ایک پروگرام، ایک اہم تقریب میں ایک int اعلان کر رہا ہوں کہ ایکس 1 کے برابر ہے. میں نے ایک INT Y 2 برابر اعلان کر رہا ہوں. اور پھر میں اس دوڑ رہا ہوں اس تقریب کے ذریعے مجھے فرض ہے کہ جہاں نام نہاد سویپ، یہ دو اقدار کو گماگمن ہے. اور پھر میں جا رہا ہوں دائیں، انہیں باہر پرنٹ؟ یہ میں نے اس پروگرام کیا کرنا چاہتے ہے. تو نیچے آ جاؤ اور ایک نظر ڈالیں. میں اصل میں ایک مختلف لکھنا تو تقریب، آپ دیکھ سکتے ہیں کے طور پر، ہم یہاں ہمارے مرکزی تقریب ہے. اور پھر ہم اپنے ہے یہاں دوسری تقریب. باطل سویپ. باطل صرف اس کا مطلب ہے کہ کچھ بھی واپس نہیں جا رہا. تقریب کا نام ہے تبدیل کردہ لسٹ سے ملاقات، اور یہ انٹیک دو متغیر، INT ایک اور کرنے کے لئے جا آپ [اشراوی] تقریب سے، ب int کی. تو بنیادی طور پر یہاں، ہم ہیں اس تقریب میں X اور Y گزر. اور ہم تو تو ہم چاہتے ہیں this-- تخلیق صحیح، ایک عارضی قدر پیدا کرنے کے لئے؟ ہم نے ایک پر کہ تفویض کرنے جا رہے ہیں. اور پھر اب برابر B کی جا رہی ہے. اور بی واپس جا رہا ہے جہاں TEMP قیمت تھا، ہے جس میں ایک، کیونکہ جب آپ چیزوں کو تبادلہ کرنا چاہتے ہیں، آپ کو صرف ان کے تبادلہ کو پسند نہیں کر سکتے ہیں. آپ کو ایک سے باہر رکھنے کے لئے ہے یہاں یہ یاد تاکہ کیا ہے کہ، ایک بار وجہ سے آپ کو ایک کا تبادلہ، آپ کو بھول جاتے صحیح، کیا ہے کہ اصل قیمت تھی؟ اصول میں، اس پروگرام تو حق، کام کرنا چاہئے؟ میں تبادلہ کرنے کے لئے چاہتا تھا، تو دو، وہ تبادلہ کرنا چاہئے. تو اسے چلاتے ہیں اور یہ کام کرتا ہے کو دیکھنے کے. تم لوگوں کو دیکھ سکتے ہیں تو کے طور پر، X ایک بار 1 تھا اور Y بار 2 تھی. اور میں نے اسے باہر پرنٹ، X اب بھی 1 ہے اور Y 2 ہے. ہمم، اس پروگرام لگتے ہو نہیں کرتا میں نے یہ کام کرنا چاہتے ہیں اس طرح کام کر رہے ہیں. کسی میں ایک شاٹ لینے کے لئے چاہتا ہے یہ کیا ہو رہا تھا کیوں اندازہ لگا؟ یہ طریقہ کے ساتھ کیا کرنا ہے کہ مختلف چیزیں ہیں یاد میں مختلف مقامات میں ذخیرہ. ٹھیک ہے. تو تم لوگ فکر کرنے کی ضرورت نہیں ہے اب اس کے بارے میں بہت زیادہ. لیکن اس مکعب کی مقامی جانتے متغیر A اور B تھے، ہمارے یہاں تقریب میں ہے کیونکہ، ہم ایک اور B کا اعلان کر دیا موجود ہے کہ متغیر کے طور پر کیوب کے اندر اندر، اس تقریب. لیکن آپ کو، پیرامیٹرز دیکھ سکتے ہیں کے طور پر اس یہ یہاں محفوظ کیا جا رہا ہے میں لے جا رہا ہے. لیکن ہم اصل میں نہیں تھے کچھ بھی نہیں آرہے. ہم اصل میں X اور Y کو تبدیل نہیں کیا گیا. ہم صرف ایک اور B تبدیل کر رہے تھے. ہم میں X اور Y کاپی کیا تھا کچھ ایک بی اور کہا جاتا. لیکن ہم اصل میں کبھی نہیں X اور Y خود ہیرا پھیری. دیکھ کر آپ لوگ ہیں کہ کس طرح ہو رہا ہے؟ ہم صرف اس کاپی ہے کہ ہے ختم، لیکن ہم اصل میں رکھا نہیں ہے وہ یاد میں تھے جہاں کے ٹریک. اور اس طرح اب کمپیوٹر اوہ، میں نے، لگ رہا ہے کے ذریعے اس بات کو چلانے اس خوبصورت تقریب. لیکن X اور Y X اور Y اب بھی ہیں. کچھ بھی نہیں ہوا ہے ان حقیقت کی وجہ سے ان پیرامیٹرز کہ اور مقامی متغیر ایک مختلف میں محفوظ کیا جاتا ہے یاد میں رکھ. اور یہ ایک اعلی سطحی ہے تصور ہے کہ ہم کریں گے کورس میں بعد میں دیکھ کر شروع کریں. لیکن صرف یہ جانتے ہیں کہ ہو سکتا ہے کہ ایک مسئلہ اور ہم کس طرح طریقوں سے پتہ لگا لیں گے کہ کورس میں بعد میں اس کے ساتھ نمٹنے. ٹھیک ہے. بالکل ٹھیک. تو گزشتہ تصور ہم ہیں واقعی احاطہ کرنے کے لئے جا کہ یہ مفید ہو جا رہا ہے pset کے اس ہفتے کے لئے کیا کہا جاتا ہے کر رہے ہیں کمانڈ لائن کے دلائل. تو ان کے درس میں روب کے ذریعے چلا گیا کس طرح ان کے کام پر مختصر طور پر کی طرح. بنیادی طور پر جانتے ہیں کہ جب آپ لکھ رہے ہیں ایک اہم تقریب، کی طرح جب ہم ، ماضی میں اس سے پہلے کام کرتا ہے لکھا ہم int اہم باطل تھا. اور اس کی وجہ ہم باطل وہاں تھا ہمارے پروگرام نہیں تھا کیونکہ تھا صحیح، کو چلانے کے لئے ان پٹ اقدار کی ضرورت ہے؟ میں ماریو بھاگ گیا، مجھے اس کی ضرورت نہیں تھی اصل میں صرف کچھ میں ٹائپ کرنا جب میں ماریو بھاگ گیا. میں بعد میں صارف کو فوری طور سکتا. لیکن کہ ہمیشہ ایسا نہیں ہو گا. مثال کے طور پر، اس میں ہفتے کی مسئلہ، کا تعین کرتا ہے میں، کہ اس سے پوچھا جائے جا رہے ہیں آپ کے پروگرام چلانے کے علاوہ، آپ ان پٹ کے لئے چاہتے ہیں کے لئے جا رہے ہیں آپ کے طور پر براہ راست میں کچھ چیزیں آپ پروگرام چلاتے ہیں. تو ہم ایسا راستہ کہا جاتا ہے ایک کمانڈ لائن کی دلیل، جس ایک دلیل کی طرح ہے آپ کو براہ راست ان پٹ کر سکتے ہیں آپ کو اپنے پروگرام کو چلانے کے لئے کوشش کر رہے ہیں کے طور پر. تو اس کے لئے سنکیتن، یہ بہت پیچیدہ لگ رہا ہے لیکن یہ واقعی نہیں ہے مشکل. تو int main-- کہ صرف اپنے اہم تقریب ہے. جہاں argc کوما سٹرنگ argv بریکٹ میں. تو کہہ رہا ہے کہ یہ سب ہے INT argc-- تمام ہے کہ آپ کو بتا ان کی تعداد میں ہیں ہے کمپیوٹر کی امید کرنی چاہئے دلائل. واقعی ہے کہ تو ایک بات کا ٹریک رکھنے کے لئے ضروری آپ کے پروگرام کی جسمانی نام ہے ان دلائل میں سے ایک کے طور پر شمار. میں نے اپنے پروگرام ہے کرنا چاہتا تھا تو کے علاوہ ایک اضافی کمانڈ لائن کو چلانے کے دلیل، میں واقعی میں ہوں دو کے لئے جا. جہاں argc اصل میں دو ہونے جا رہا ہے. اور پھر سٹرنگ argv bracket-- کر رہا ہے کہ تمام، اس نے مجھے ایک دے رہا ہے ہے کہ ڈور کی صف صرف ڈسپلے اور ذخیرہ کرنے کے لئے کیا ہو رہا ہے ان کمانڈ لائن کے دلائل کے ہیں. لہذا مثال کے طور، میں یہ ہے کرنا چاہتے تھے تو پروگرام، دائیں، outfile infile ./copy؟ یہ صرف ایک عام لینکس کمانڈ کے. کیا اصل میں جہاں argc ہے؟ کتنے کمانڈ لائن کے دلائل اس میں اصل میں وہاں ہیں؟ یہ سب کرتا ہے کی ایک کاپی بنانے کے لئے ہے ایک فائل کے نام کے ایک infile اور یہ کاپیاں اس میں دوسری فائل، ٹھیک ہے؟ یہ سب کر رہا ہے ہے. آپ دیکھ سکتے ہیں کے طور پر، میں ایک لائن پر کر رہا ہوں اصل پروگرام کی ضرورت کے بغیر. اس معاملے میں ہماری argc کیا ہے؟ ہم کس طرح بہت سے دلائل ہیں؟ سامعین: تین؟ ANDI پینگ: ہم بالکل، تین ہے. تو اس کے لئے بہت بدیہی ہے صرف یہ صرف ہے کہ لگتا ہے infile اور outfile. لیکن جانتے ہیں کہ جسمانی نام پروگرام آپ کو ایک کے طور پر شمار چلا رہے ہیں. تو اس صورت میں، جہاں argc اصل تین ہے. کس طرح کے بارے، ہے argv 0 کیا ہے؟ ، کے تمام یاد کمانڈ لائن کے دلائل ڈور کی ایک صف میں محفوظ کیا گیا. تو میں اس تک رسائی حاصل کرنے کی کوشش کریں تو کیا بریکٹ 0 مجھے دے ہے argv گے؟ سامعین: [اشراوی]. ANDI پینگ: بالکل. یہ میرے ڈاٹ دے گی کہ ہے کیونکہ، کاپی سلیش کے 0th عنصر، میرے صف کے پہلے عنصر. کیا ہے argv 1 کے بارے میں؟ سامعین: Infile. ANDI پینگ: Infile، بالکل. کیا ہے argv 2 کے بارے میں؟ سامعین: Outfile. ANDI پینگ: Outfile. اب یہ تھوڑا سا مشکل ہے. تم لوگ کیا سوچتے ہیں ہے argv 3 مجھے دے جا رہا ہے مجھے لگتا ہے کہ باہر پرنٹ کرنے کی کوشش کی تو؟ سامعین: [اشراوی]؟ ANDI پینگ: آپ کو ایک ہاتھ ہے؟ جی ہاں. سامعین: ایک متبادل. ANDI پینگ: بالکل. تو لیکچر میں یاد ہے کہ ہم ایک دوڑ کچھ کے آخر میں ہے شہوت انگیز null مختتم بلایا؟ ہم نے بھی اس میں مل جائے گا مزید پر کلاس میں. لیکن سنکیتن میں جانتے ہیں کہ، طریقہ آپ کے کمپیوٹر یہ آخر ہے کہ جانتا ہے صف کی کہ ہے شہوت انگیز null کہا جاتا ہے کچھ رکھتا ہے ٹرمنیٹر یا ڈیش صفر. تو آپ کو ہے argv 3 تک رسائی حاصل کرنے کی کوشش کریں تو، آپ کو اس ڈیش 0 کو نشانہ بنانے جا رہے ہیں. یہ ایک چال کا سوال سے بھی زیادہ ہے. کیا ہے argv 4 کے بارے میں؟ تو یہ گزشتہ شہوت انگیز null مختتم ہے، ہمارے صف کی حد ماضی. جا رہا ہے تم کیا سوچتے ہو ہم ایسا کرنے کی کوشش کرتے ہو؟ سامعین: [اشراوی]؟ ANDI پینگ: معاف کیجئے گا؟ کہ تھوڑا سا زور ہے؟ سامعین: [اشراوی]. ANDI پینگ: جی ہاں. اس کا نام ہے آپ سب سے زیادہ امکان مل جائے گا کے علاقے. لیکن اس ہے argv جانتے 4-- تک رسائی کی اجازت دیتا ہے آپ کے کمپیوٹر میں مقامات میموری آپ کہ واقعی کیونکہ، چھونے نہیں ہونا چاہئے اب آپ کیا ہے argv جانتے. تم نے اسے سائز 3 کی ایک صف ہے جانتے ہیں کہ کہ نقطہ کاپی، infile اور outfile ہے. تم اس سے باہر اتنی دور جانے کی کوشش کرتے ہیں آپ شہوت انگیز null مختتم ماضی ہیں کہ، آپ کے کمپیوٹر شاید ہے ہے argv 4 میں ذخیرہ کچھ. اور تم واقعی نہیں ہونا چاہئے ، ہے argv 4 میں رسائی کی اجازت آپ کو ایک فائل ہے کیونکہ کابینہ اور آپ کو صرف ہو ان تین شیلف تک رسائی کی اجازت. لیکن آپ کو راستے سے باہر تک پہنچنے کے لئے کوشش کرتے ہیں تو آپ کی اجازت ہے جہاں کی شیلف، آپ کے ساتھ خلط ملط شروع کرنے کے لئے جا رہے ہیں آپ کے کمپیوٹر کی میموری میں دوسری چیزوں. یہ واقعی، بہت برا ہونے جا رہا ہے. تو جانتے ہیں کہ. آپ کو اس بہت ہوشیار رہو صرف تصادفی شروع نہ کرو ایک صف میں عناصر تک رسائی حاصل ہے کہ آپ کی تخلیق کرنا چاہتا تھا میں نہیں تھے. جی ہاں. ٹھیک ہے. تو ہم نے ایک اور ایسا کرنے کے لئے جا رہے ہیں یہاں ٹرمینل مثال. ٹھیک ہے. فوری طور پر لیکچر میں روب تو دوسرے دن چلے گئے اس مثال کے ذریعے، وہ کہاں تھا INT اہم int argc سٹرنگ argv بریکٹ، ہوں کہ مجھ سے کہہ رہا ہے جس میں کمانڈ لائن کے دلائل کے لئے جا. جہاں argc برابر تو وہ، ہے 2-- یاد برابر، برابر مقابلے کا مطلب ہے کے برابر ہے. یہ 2 برابر، تو میں ہوں ہیلو پرنٹ کرنے کے لئے جا رہا، جو سب سے پہلے صف کے عنصر ہے. ورنہ پرنٹ، ہیلو دنیا. اس کے لئے کیا جا رہا ہے بنیادی طور پر ہو؟ کسی کو صرف میں وضاحت کر سکتے ہیں انگریزی اس پروگرام کیا کر رہا ہے؟ جی ہاں. سامعین: کسی ایک کمانڈ میں ٹائپ تو اور ان کی پہلی اور آخری نام کہا، یہ صرف پرنٹ نہیں ہوں گے ایک اور خوش، کا کہنا ہے کہ سب سے پہلے، جو کچھ بھی آپ کا پہلا نام ہے. ANDI پینگ: ٹھیک ہے، کی اسے چلاتے ہیں. میں تھے تو مثال کے طور پر، بنانے کے لئے اس فائل ہیلو to-- ہیلو تم مجھ سے ان پٹ کے لئے کیا چاہتے ہیں to--؟ سامعین: سب سے پہلے اور آخری نام. ANDI پینگ: سب سے پہلے اور آخری نام؟ خالی جگہوں؟ سامعین: جی ہاں. ANDI پینگ: کوئی بتا سکتے ہیں مجھے ابھی، argc کیا ہے؟ بس وہیں؟ افوہ، افسوس. مجھے واپس جانے دو. کتنے کمانڈ لائن کے دلائل تم لوگوں کو واقعی نہیں دیکھ سکتا are--. لیکن میں زوم کرنے کے لئے کوشش کریں گے. میں کوشش کر رہا ہوں. جی ہاں، صحیح، تین ہے؟ یہ خوش ڈاٹ سلیش ہے، یہ Andi کی ہے، اور یہ پینگ ہے. تو تم لوگ اس میں کیا سوچتے ہیں پروگرام چھپائی جا رہا ہے؟ اوہ. اوہ معاف کیجئے. غلط نام. یہ ہیلو دنیا، باہر پرنٹ ہے. کسی وضاحت کرنے کے لئے چاہتا ہے یہی وجہ ہے کہ کیا ہو رہا ہے؟ جی ہاں؟ سامعین: [اشراوی]. ANDI پینگ: بالکل. تو یہاں، مشروط ہیں جہاں argc 2 کے برابر ہے تو، ہے. تو صرف اس صورت میں ہے کہ وہاں دو کمانڈ لائن دلائل. پھر میں پرنٹ کرنے کے لئے جا رہا ہوں، ہیلو، یہ جو کچھ بھی ہے. لیکن کسی، میں جا رہا ہوں صرف، ہیلو دنیا پرنٹ. تو کسی چاہتا ہے مجھے ایک مثال دینے کے لئے کس طرح میں نے اصل میں کرنے کے قابل ہو جائے گا یہ ہے argv 1 کی قدر پرنٹ کرنے کے لئے حاصل ہے؟ میں یہاں ان پٹ کے لئے کیا ہوگا؟ صرف ایک ہی چیز، ٹھیک ہے؟ ڈاٹ ہیلو پہلے ہی کرنے کی وجہ پہلی دلیل کے طور پر شمار. میں صرف ایک زیادہ ہے. میں صرف Andi کی کرتے ہیں تو ہیلو ڈاٹ. ہیلو، Andi کی. سب سمجھ ہے یہی وجہ ہے کہ کیا ہو رہا ہے؟ جی ہاں. سامعین: تو درمیان کی جگہ کمانڈ line-- یہ [اشراوی] ہے؟ ANDI پینگ: نمبر ایک کمانڈ لائن میں جگہ تو دلیل، X، آپ کے کمپیوٹر کو بتانے کے لئے یہ ہے کہ ایک نئی سٹرنگ کا آغاز ہے. تو سٹرنگ argv یہ اسٹورز یہاں آپ کے حکم لائن کے دلائل کے تمام ڈور میں. اور اس طرح کمانڈ لائن میں جگہ ، کرتا ہے تم سب کو بتانا ہے دلیل یہ ایک تار کے آخر میں ہے اور یہ ایک اور پر منتقل کرنے کا وقت ہے. جی ہاں. اس کے لئے بہت اہم ہے اپنے pset، آپ ہیں کیونکہ ان کی جانچ کی جائے کرنے کے لئے جا. تو کسی کو ہے اس پر کوئی سوال؟ ٹھنڈا، ٹھیک ہے. جی ہاں؟ سامعین: تو اس کی وجہ کیا تم کروگی بجائے عددی دلیل حساب ڈال آپ چاہتے ہیں جب کے [اشراوی] ہو جائے گا کرنے کے لئے اضافی معلومات ٹائپ کرنے [اشراوی]؟ ANDI پینگ: جی ہاں، بالکل. کچھ پروگرام کی ضرورت ہو گی ان پٹ ایک کمانڈ لائن کی دلیل کے لئے جو کچھ اس میں گزر جاتا ہے اور یہ کہ استعمال کرتا ہے. جی ہاں. سامعین: تو کیا ہوا اگر [اشراوی]؟ ANDI پینگ: ٹھیک ہے، میں نے کیا کرنا ہے اپنے پروگرام میں اس وقت تبدیل کرنے کے لئے؟ سامعین: صرف 3. ANDI پینگ: ایسا کیوں ہے ہو، آپ کو لگتا ہے؟ سامعین: [اشراوی] کیونکہ. سامعین: آپ کو پڑے گا [اشراوی] 2 کے لئے اسے تبدیل. سامعین: 1 اور 2. ANDI پینگ: 1 اور 2، بالکل. تو اس صورت میں، آپ کو شاید گے دو printf کے statements-- کرنا چاہتے ہیں ہے argv 1 چھپی ہوئی ہے کہ ایک اور ہے argv 2 چھپی ہوئی ہے کہ ایک. یہاں. میں اصل میں اصلی فوری ایسا کر سکتے ہیں. تم وہاں جاؤ. اوہ. نہیں بہت کیا آپ چاہتے تھے. لیکن آپ کے ارد گرد لوگوں کو گندگی کے ساتھ تو فارمیٹنگ، یہ باہر آ جائے گی. جی ہاں. ٹھنڈا. میں ہم وقت پر تھوڑا سا مختصر ہو. لیکن میں صرف فوری طور پر ایک خرچ کرنے کے لئے جا رہا ہوں helpful-- کے ذریعے جانے دو منٹ سامعین: آپ کے پاس دو منٹ ہیں. ANDI پینگ: میں نے دو منٹ ہے؟ آپ کا شکریہ. کچھ فوری pset کے تجاویز. اس pset کے لئے تو، میں انتہائی کی سفارش جیسے میں نے کہا، سب رپورٹ کو پڑھنے کے لئے. آپ کو تین programs-- ایک تحریری گے ، caesar.c نامی ایک، initials.c بلایا ایک نام نہاد vigenere.c. کچھ اہم تجاویز ہیں کہ تم لوگوں کو واقعی چاہتے ہیں تو mind-- میں رکھنے کے لئے اس تقریب نہیں ہے میں کہنا چاہوں طور پر ایک TROIS، atoi-- بلایا. ہے تو واضح اصل میں آپ کو یہ کس طرح کا کہنا ہے کہ. لیکن یہ سب یہ inputting کی ہے، کر رہا ہے. یہ ایک int کے لئے ایک سٹرنگ بدلتا ہے. تو میں عددی ASCII کی نمائندگی کرتا ہے. یہ صرف ASCII تبدیل ہے اقدار اقدار عددی. تو، کہ دکانوں سرنی ہے argv یاد آپ کے حکم کے تمام دلائل لائن یہ ڈور کے طور پر ان تمام اسٹورز. اور اس طرح آپ کے قابل ہو جائے کرنا چاہتے ہیں تو ان میں سے ایک عددی بن گئے ہیں، آپ جا رہے ہیں یہاں اس قدر کو استعمال کرنے. modulo ہے، ہم احاطہ کرتا کی طرح پہلے طبقے میں آج، آپ کی اجازت دیتا ہے آپ کے پاس جو کچھ بھی باقی. اگر ایسا ہے تو ہم واقعی، واقعی ہے کیسر میں بڑی تعداد، کیا ہم آخر ہے Vigenere کے کی ایک سٹرنگ کا؟ کس طرح آپ کے قابل ہو جائے کرنے کے لئے جا رہے ہیں اس کے ارد گرد لپیٹ کرنے کے لئے حاصل کرنے کے لئے؟ میں Z مارا اور مجھے چاہتے ہیں تو یہ ایک واپس جانے کے لئے، میں کس طرح حاصل کرنے کے لئے جا رہا ہوں اس کے ارد گرد لپیٹ کرنے کے لئے؟ شاید استعمال کرنا چاہتے ہیں وہاں کہیں modulo ہے. دوم، کے ارد گرد براؤز اپنی لائبریری. ctype.h ہے. کہ ہم نے ایک نئی لائبریری ہے. تم سچ میں، واقعی ایک بہت تلاش کر لیں گے مفید افعال isupper، islower، toupper کے، tolower، isalpha، وغیرہ. بہت مفید ہو گا کہ تمام افعال آپ کو جاننے کی کوشش کر رہے ہیں جب، اس کردار ایک چھوٹے خط ہے؟ میں نے اس کو تبدیل کیسے ایک بڑے سٹرنگ؟ یہ سب چیزیں، بہت ہو جائے گا آپ pset کے لئے بہت مدد گار. ٹھیک ہے. دفتری اوقات آج رات ہیں 8:00 سے چیتی کلاس روم میں 11:00 کل اس کے ساتھ ساتھ بدھ اور جمعرات کی رات کے طور پر. دفتری اوقات العام میں ہیں. انتہائی تم لوگوں کا مشورہ تمام، فورا شروع کرنے تم نے اس بننا چاہتا ہوں نہیں ہے کیونکہ جمعرات کی رات مسائل ہیں جو بچے ہے اپنے pset جمع کرنے اور کی طرح، مجھے کیا کرنا ہے نہیں جانتے. میں ختم ہو گیا، شروع، میں پیش. اپنے آپ کو کچھ کمرے دینے کی کوشش کریں، کوڈ مسائل ہمیشہ پائے جاتے ہیں کیونکہ. آپ بات کو یقینی بنانا چاہتے ہیں تم اپنے آپ کو دے کہ وقت کی ایک بہت کے قابل ہو جائے کی psets مکمل کرنے کے لئے. ٹھنڈا. میں یہاں کے ارد گرد پھانسی گا. سامعین: اس آن لائن پہلے سے ہی ہے؟ ANDI پینگ: یہ تو مجھے نہیں معلوم پہلے ہی آن لائن، لیکن یہ ہو جائے گا. اگر کسی میں یہاں کے ارد گرد پھانسی گا پہلے سے ہی کسی بھی سوال ہے. شکریہ آنے کے لیے.