[موسیقی بجانے] ڈوگ لایڈ: ہیلو، تو چلو C. میں آپریٹرز کے بارے میں بات تو، ہم نے پہلے ہی دیکھا ہے، حقیقت میں، تفویض آپریٹر برابر. یہ ہمیں صرف میں ڈال کرنے کی اجازت دیتا ہے ایک متغیر میں ایک قدر. اس اسائنمنٹ ہے آپریٹر، ایک برابر علامت. جوڑتوڑ کرنے کے لئے اور کام میں C میں اقدار اور متغیر کے ساتھ، ہم آپریٹرز کی ایک بڑی تعداد ہے اپنے کو ضائع کرنے میں ہم استعمال کر سکتے ہیں. کی پر ایک نظر ڈالیں عام والوں میں سے کچھ ریاضی آپریٹرز کے ساتھ شروع ہونے والے. آپ توقع کر سکتے، ہم کر سکتے ہیں C. میں خوبصورت بنیادی ریاضی آپریشن ہم، شامل منہا، ضرب، اور کر سکتے ہیں پلس کا استعمال کرتے ہوئے تقسیم کی تعداد، مائنس، ستارہ، اور بالترتیب، سلیش. یہاں کے لائنوں کے ایک جوڑے کی ہے کوڈ ہے جس میں ہم ایسا. لہذا، ہم int ایکس Y علاوہ 1 کے برابر ہے. کہیں کہ فرض کرتے ہیں کوڈ کی اس لائن اوپر ہم int Y 10 کے برابر ہے نے کہا تھا. X کی قدر میں کے بعد کیا ہے کوڈ کی اس پہلی سطر پھانسی؟ 11 کہا؟ تم نے صحیح تھا. ایسا کیوں ہے؟ ویسے، Y 10 سال کی تھی. کچھ میں کہہ رہا ہوں int ایکس 10 1 پلس برابر. 10 پلس 1 11 ہے. تو، قیمت 11 ہو جاتا ہے متغیر X میں محفوظ کیا. بھی برا نہیں، ٹھیک ہے؟ کس طرح کا یہ اگلی لائن کے بارے میں کوڈ؟ ایکس 5 برابر ہے. ویسے، سے پہلے کہ ہم پھانسی کوڈ کی اس لائن، ایکس 11 تھا. لہذا، کی قیمت کیا ہے X کوڈ کی اس لائن کے بعد؟ ایک دوسرے لے. لہذا، ایکس 5 برابر ہے. ایکس 11 تھا. لہذا، ایکس 11 مرتبہ 5 برابر ہے. یا 55. آپ کو 55 کہا تو، آپ ٹھیک ہو جائے گا. اب، یہ تھوڑا الجھا ہو، لیکن کر سکتے ہیں کہ تفویض C میں کام کرتا ہے طریقہ کے ساتھ دائیں قدر ہو جاتا ہے بائیں پر قیمت کے لئے مقرر کیا. تو، سب سے پہلے ہم ایکس 5 اندازہ. تو، 11 بار 5 55. اور پھر ہم ایکس میں اس قدر ذخیرہ. وہاں تھا 11 پہلے اب ادلیکھت ہے. تو ایکس کی قیمت اب 55 ہے. امید ہے کہ منصفانہ سیدھا ہے. آپ ہے کہ ایک اور آپریٹر ہے شاید لازمی طور نہیں سنا اس بلایا، لیکن آپ نے یقینی طور پر ماضی میں ساتھ کام کیا آپ کو طویل عرصے کے دن یاد ہے واپس گریڈ اسکول میں تقسیم طریقہ. یہ معامل آپریٹر کہا جاتا ہے. کیا معامل کرتا ہے آپ باقی دیتا آپ کے ساتھ دو نمبروں کی تقسیم کے وقت. اگر میں کہوں تو، 13 کی طرف سے تقسیم 4، باقی کیا ہے؟ اور اس قدر حساب کیا جائے گا معامل آپریٹر کی طرف سے. لہذا، میں نے کوڈ کی ایک لائن ہے یہاں، INT 13 میٹر جدید 4 برابر. اور میں نے ایک تبصرہ میں یہاں کا کہنا ہے کہ کہ میٹر کی قیمت اب 1. میں ایسا کیوں کہہ رہے ہو؟ ویسے، میں طویل ڈویژن باہر آپ سر آپ کو ایک دوسرے کے لئے میرے ساتھ، برداشت ہے. لہذا، میں نے 4 13 کی طرف سے تقسیم کیا ہے. 4 13 تین بار میں چلا جاتا ہے 1 کے باقی کے ساتھ. تو، بنیادی طور پر، تمام معامل آپریٹر کرتا ہے یہ آپ کو جب آپ کو بتاتا ہے تقسیم، آپ باقی حاصل. تم نے اصل میں لگتا ہے ہو سکتا نہیں ایک بہت مفید چیز ہے، لیکن آپ، اصل میں، حیران کیا جائے گا کس طرح بار بار کہ معامل کی طرف سے آپریٹر ہاتھ میں آ سکتا. مسائل میں سے ایک جوڑے کی ہے ہم اس کے ساتھ نمٹنے ہے کہ CS50 کروں گا. یہ بھی کرنے کے لئے اچھا ہے بے ترتیب تعداد کی طرح چیزوں. تو، مثال کے طور پر تم نے کبھی ہے تو ایک بے ترتیب تعداد میں جنریٹر کے بارے میں سنا، کہ آپ کو ایک نمبر دینے جا رہا ہے 0 سے کچھ بڑی تعداد میں. لیکن شاید آپ کو صرف واقعی 0 سے 20 ایک بڑی تعداد کی ضرورت ہے. آپ کا آپریٹر آپ معامل کا استعمال کرتے ہیں کہ وشال تعداد پر کہ کی طرف سے پیدا ہو جاتا ہے بے ترتیب تعداد میں جنریٹر، آپ کو لینے کے لئے جا رہے ہیں جو کچھ بھی یہ بھاری قیمت،، 20 کی طرف سے تقسیم اور باقی حاصل. باقی صرف کر سکتے ہیں 0 سے 19 کرنے کے لئے ایک قیمت ہو. لہذا، آپ کو معامل آپریٹر کا استعمال کریں اس بڑی تعداد لینے کے لئے اور نیچے کچھ میں whittle اسے ایک چھوٹا سا زیادہ بامعنی. میں نے آپ کو ہو جائے گا یقین ہے ان میں سے دونوں استعمال کرنے کے قابل CS50 میں مستقبل میں کسی وقت. تو، سی بھی ہمیں ایک طریقہ فراہم کرتا ہے ایک ریاضی لاگو کرنے کے لئے ایک متغیر آپریٹر ایک چھوٹا سا زیادہ آشلپی راہ میں. تو، گزشتہ سلائڈ میں، ہم ایکس 5 برابر دیکھا. یہ کام کیا. X اوقات 5 پھر ایکس میں ذخیرہ کیا جاتا ہے. ایسا کرنے کے لئے ایک چھوٹا راستہ سوچ، نہیں ہے، اور یہ نحو ایکس 5 برابر ہے. یہ ایک ہی عین مطابق بات ہے کہہ ایکس 5 برابر ہے. یہ صرف ایک تھوڑا سا ہے ایسا کرنے کے لئے چھوٹا راستہ. اور تم کچھ دیکھ کر تقسیم کوڈ یا آپ کچھ نمونے کوڈ دیکھتے ہیں کہ اس طرح کی باتیں کرتا ہے، صرف سے واقف ہونا نحو کا مطلب کیا ہے. آپ یقینی طور پر نہیں ہے اگر آپ ایسا کرتے اس کا استعمال، لیکن، یہ آپ کے کوڈ بنا سکتا ہے ایک چھوٹا سا برساتی کوٹ دیکھو. اور تم بھی سے کسی کو استعمال کر سکتے ہیں جانتے ہیں کہ مختلف آپریٹرز ہم نے پہلے ہی ہے پہلے بجائے بار دیکھا. آپ ایکس کے علاوہ 5، مائنس برابر کہہ سکتے ہیں 5، اوقات، تقسیم، اور جدید برابر. ان کے کام کی تمام. کچھ بھی نہیں ہے کہ C میں اتنی عام ہے ہم کرنے کا فیصلہ کیا ہے کہ مزید بھی ہے کہ بہتر. 1 کی طرف سے ایک متغیر incrementing کی یا 1 کی طرف سے ایک متغیر decrementing اس طرح ایک عام thing-- خاص طور پر ہم بات کرتے ہیں کے بارے میں تھوڑی دیر بعد loops کے on-- ہم اس کی بجائے کا فیصلہ کیا ہے کہ ، X پلس کی طرح کچھ 1 برابر کہہ یا ایکس ایکس 1 پلس برابر، ہم بھی ہے مختصر کہ ایکس پلس پلس کے حوالے. لہذا، ایکس پلس 1، YX کے علاوہ 1 کے برابر ہے، اور ایکس پلس پلس سب ایک ہی بات کرتے ہیں. وہ 1 کے ذریعے کی گئی اضافہ ایکس. لیکن اس incrementing کی اور 1 کی طرف decrementing ہم ہے کہ بہت عام ہے پلس پلس اور مائنس مائنس کہ ہمیں آشلپی کرنے کی اجازت مزید بھی ہے. تو، دوسرے کے لئے گیئرز کو سوئچ دو اور بولین اظہار کے بارے میں بات. بھی قسم کی ہیں جو تمام میں گر آپریٹرز کی مجموعی زمرے. لیکن بولین اظہار، ریاضی آپریٹرز کے برعکس، اقدار موازنہ کرنے کے لئے استعمال کیا جاتا ہے. C میں تو، ایک بار پھر، تمام بولین اظہار دو ممکنہ اقدار میں سے ایک اندازہ، یاد. صحیح یا غلط. یہ صرف دو اقدار ہے کہ بولین متغیر پر لے جا سکتے. ہم نتائج کا استعمال کر سکتے ہیں ایک بولین اظہار کی پروگرامنگ میں طریقوں کی ایک بہت میں. اصل میں، آپ کو ہو جائے گا یہ بالکل ایک بہت کر. مثال کے طور پر، ہم نے فیصلہ کر سکتے ہیں، ساتھ ساتھ، کچھ اگر حالت درست ہے، شاید میں اس لے لیں گے میرا کوڈ نیچے شاخ. ایک مشروط، تو بات کرنے کی. ہم جلد ہی ان کے بارے میں پتہ چل جائے گا. یا ہو سکتا ہے، جب تک کے طور اس میں چاہتا ہوں، سچ ہے اس کر رکھنے کے لئے اور اس سے زیادہ اور اس سے زیادہ. ایک لوپ. دونوں صورتوں میں، ہم استعمال کر رہے ہیں جانتے ہیں کہ سچ ہے یا جھوٹ ایک بولین اظہار،، یا نہ کرنے کا فیصلہ ایک خاص راستہ لینے کے لئے. کبھی کبھی جب ہم کام کر رہے ہیں بولین اظہار کے ساتھ، ہم قسم bool کے متغیر کا استعمال کریں گے. آپ اعلان کر دیا ہے ہو سکتا ہے ایک bool، متغیر ٹائپ اور آپ میں استعمال کریں گے آپ بولین اظہار. لیکن تم نے ہمیشہ ایسا کرنے کی ضرورت نہیں ہے. یہ، C میں، ہر غیر 0 باہر کر دیتا ہے کے طور پر قیمت سچ کہہ کے طور پر ایک ہی ہے. آپ کا اعلان کیا تھا تو قسم بولین متغیر، اور یہ کہ، یہ سچ قیمت مقرر ایک عددی اعلان طور پر ایک ہی اور اس کی قیمت مقرر 1، 2، 3، یا واقعی کسی بھی قیمت 0 کے مقابلے میں دیگر کچھ. C میں، کیونکہ ہر غیر 0 قدر سچ ہے. 0، دوسری طرف، باطل ہے. یہ میں آ سکتا ہے جاننا بعد آسان، لیکن صرف کچھ کے دماغ میں رکھنے کے لئے. ہم نے ہمیشہ استعمال کرنے کے لئے نہیں ہے بولین قسم متغیر جب ہم بولین اظہار کے ساتھ کام کر رہے ہیں. بولین کی دو اہم قسمیں ہیں ہم کے ساتھ کام کریں گے کہ اظہار کی طلب. منطقی آپریٹرز اور سنبندپرک آپریٹرز. ہے زبان بہت اہم نہیں. یہ میں نے ان کی گروہ بندی کر رہا ہوں کہ کس طرح واقعی ہے. اور آپ کو یقینی گے، میں نے جلدی سے، لگتا ہے ، ایک سنبندپرک آپریٹر ہے کیا احساس کی بنیاد پر وہ کیا ہیں جب ہم ایک دوسرے میں ان کے بارے میں بات. لیکن ضروری نہیں کہ فکر نہ کرو اصطلاح منطقی آپریٹر حفظ یا سنبندپرک آپریٹر. میں صرف گروپ کو استعمال کر رہا ہوں انہیں ایک منطقی انداز میں. تو، پر ایک نظر ڈالیں تین منطقی آپریٹرز ہم کافی دیکھیں گے کہ CS50 میں پروگرامنگ میں بٹ اور پروگرامنگ میں زیادہ عام طور پر. منطقی اور درست ہے اور اگر صرف دونوں operands سچے ہیں تو. ورنہ جھوٹے. کہاں مطلب ہے؟ تو، میں نے ایک میں ہوں کا کہنا ہے کہ دو میں ہے جہاں میرا کوڈ میں اشارہ دو متغیر، X اور Y. اور میں فیصلہ کرنے کے لئے چاہتے ہیں اپنے کوڈ میں کچھ کرنا X سچ ہے اور Y سچ ہے کی بنیاد پر. میں صرف اس صورت میں یہ کرنا چاہتا ہوں ان دونوں، سچے ہیں دوسری صورت میں مجھے لگتا ہے کہ نیچے جانے کے لئے نہیں کرنا چاہتے راستے میری مدد کرنے والا نہیں ہے کیونکہ. کیا کہہ سکتے ہیں X & Y & تو ہے. یہ ایک منطقی بولین ہو جائے گا اظہار موازنہ X اور Y اور ایک خاص راہ لے ان کی اقدار کیا ہیں پر مبنی. X سچ ہے اور اگر ایسا ہے تو، Y سچ ہے یہاں اس حقیقت کو ٹیبل کی بنیاد پر، صرف اس صورت میں ہم اس راستے نیچے جائیں گے. X، اور & Y تو. یہ صرف اور صرف true-- ہے ہے X سچ ہے اور Y سچ ہے اگر یہ سچ ہے. یا تو ایک جھوٹ ہے تو، ہم سچ میز دیکھ کے طور پر، تب X اور Y دونوں سچے نہیں ہیں. اور اس طرح، X & & Y باطل ہے. منطقی یا تو صرف سچ ہے کم از کم ایک اوپیرانڈ سچ ہے تو. ورنہ جھوٹے. تو منطقی اور ضرورت X اور Y دونوں سچ ہو. منطقی یا صحیح یا Y ہو ایکس ضرورت سچ ہو یا دونوں X اور Y سچ ہو. تو، ایک بار پھر، ہم اس قسم کی تلاش ایک ایسی صورت حال میں خود کو ہم اپنے کوڈ کے لئے جا رہے ہیں جہاں، اور ہم راستے میں ایک کانٹا تک پہنچ. اور ہم نے ایک نیچے جانے کے لئے چاہتے ہیں خاص طور پر راستے X سچ ہے تو یا Y سچ ہے، لیکن نہیں ضروری تو دونوں سچے ہیں. لیکن ممکنہ طور پر تو دونوں سچے ہیں. X سچ ہے اور اگر ایسا ہے تو Y ہے سچ، ہم اس راستے پر چلے جائیں گے. X سچ ہے. ان میں سے ایک حق، سچ ہے؟ X سچ ہے اور Y سچ ہے تو. X سچ ہے، اور Y باطل ہے تو، ان میں سے ایک اب بھی سچ ہے. تو، X یا Y اب بھی سچ ہے. X باطل ہے، اور Y سچ ہے تو، ان میں سے ایک اب بھی سچ ہے؟ Y اس معاملے میں، سچ ہے. لہذا، یہ ایکس یا Y سچ ہے کہ سچ ہے. X باطل ہے اور Y باطل ہے صرف اس صورت میں ہم اس راستے پر نہیں جاتے، X نہ Y نہ تو سچ ہے کیونکہ. اب، آپ کو تلاش کر رہے ہیں سکرین پر اب اور اس کا کیا سوچ علامت منطقی یا کے لئے ہے، یہ عمودی بار کہا جاتا ہے. اور اگر آپ اپنے کی بورڈ پر تلاش کر رہے ایک منٹ کے لئے، اب میں کیا کر رہا ہوں کے طور پر، یہ صرف اوپر عام طور پر ہے کلید درج کریں، سب سے زیادہ کی بورڈ پر، الٹا سلیش کے طور پر ایک ہی چابی پر. یہ بھی عام طور پر ٹھیک ہے مربع بریکٹ کرنے کے لئے اگلے. لہذا، یہ ایک اہم ہو سکتا ہے کہ آپ ماضی میں بہت ٹائپ نہیں کیا ہے. لیکن، کیا تم نے کبھی کر رہے ہیں منطقی موازنہ، ہم نے ایک کر دیا جائے گا کے طور پر کورس میں بہت، یہ ہے کرنے کے لئے مفید ہو جا رہا کہ چابی تلاش اور اس کا استعمال. تو، یہ ایک ہی چابی پر عام طور پر ہے الٹا سلیش کے طور پر صرف اوپر درج. آخری منطقی آپریٹر نہیں ہے. اور بہت سیدھا ہے. یہ اس اوپیرانڈ کی قدر الٹاتا. X سچ ہے، تو نہیں X باطل ہے. X باطل ہے، تو نہیں X سچ ہے. کبھی کبھی آپ کو اس علامت سن گے دھماکے یا فجائیہ کے طور پر اعلان یا نہیں. یہ بہت زیادہ سب ایک ہی بات ہے. کیس میں آپ کو اس بات سنتے اور آپ کا مطلب ہے کہ اس بات کا یقین نہیں کر رہے ہیں یہ صرف فجائیہ ہے نقطہ، لیکن کبھی کبھی یہ ہے ایک جوڑے کو مختلف چیزوں کو کہا. ٹھیک ہے، تو لیتا ہے منطقی آپریٹرز کی دیکھ بھال. تو، کے بارے میں بات کرتے ہیں سنبندپرک آپریٹرز. ایک بار پھر، آپ کو اس سے واقف ہیں واپس گریڈ اسکول میں ریاضی، آپ کو شاید واقف ہیں کے ساتھ کس طرح ان کا کام پہلے ہی. آپ توقع تھا کے طور پر یہ بالکل وہی برتاؤ. تو کم اس میں، سچ ہے کے مقابلے میں مثال کے طور پر، X Y سے کم ہے تو. ایکس 4 ہے اور اگر ایسا ہے تو، Y ہے 6، X Y سے بھی کم ہے. یہ سچ ہے. سے کم یا برابر خوبصورت اسی طرح کام کرتا. X 4، اور Y کے بعد، 4 ہے X Y سے کم یا برابر ہے. اس سے بڑا. X Y سے زیادہ ہے. اور یا اس سے زیادہ، ایکس کے برابر Y سے زیادہ یا برابر ہے. یہ سچ ہے، تو تمہیں اس اظہار کو منتقل، اور آپ کو نیچے چلے جائیں گے سڑک پر اس راستے. X Y سے زیادہ ہے تو آپ کو ایک ہیں، تو، اور ایکس، حقیقت میں، Y سے زیادہ ہے، آپ جو کچھ بھی کروں گا اس شرط کے ساتھ مشروط. ہم نے ایک نہیں ہے کہ نوٹس سے کم کے لئے ایک کردار یا کے برابر، کے طور پر آپ کو ہو سکتا ہے ریاضی درسی کتب سے واقف. لہذا، ہم، علامت سے بھی کم ہے ایک برابر علامت کے بعد. کہ ہم کس طرح ہے کی نمائندگی کرتے ہیں یا اس سے زیادہ کے برابر کم. اور اسی طرح، ہم ایسا کرتے ہیں یا اس سے زیادہ کے برابر کے لئے. آخری دو سنبندپرک اہم ہیں کہ آپریٹرز مساوات اور عدم مساوات کے لئے ٹیسٹ کر رہے ہیں. تو، X برابر ہے، Y برابر سچ ہے X اور Y کی قدر ایک ہی ہے تو. X 10 ہے، اور Y کے بعد، 10 ہے، تو X برابر Y سچ ہے برابر. X 10 ہے اور Y ایکس 11، ہے Y سچ نہیں ہے برابر. ہم نے بھی استعمال کر رہے ہیں عدم مساوات کے لئے ٹیسٹ کر سکتے ہیں فجائیہ نقطہ یا بنگ یا نہیں، ایک بار پھر. اگر ایکس تو، Y کے برابر نہیں ہے کہ، ہم یہاں استعمال کر رہے ہیں امتحان ہے ہم جانے کے لئے اچھا ہو جائے گا. لہذا، ایکس کے برابر نہیں ہے تو Y، ہم اس راستے پر چلے جائیں گے. یہاں واقعی ہوشیار رہو. یہ ایک بہت عام mistake-- ہے اور ایک میں یقینی طور پر بنا ایک بہت جب میں started-- ہو رہی تھی اتفاقی طور پر غلطی کرنا تفویض آپریٹر، ایک برابر، مساوات کے مقابلے آپریٹر کے لئے، ڈبل برابر. یہ کچھ عجیب کی قیادت کریں گے آپ کے کوڈ میں رویے، اور عام طور پر کمپائلر گا آپ کی کوشش کریں جب اس کے بارے میں انتباہ اور آپ کے کوڈ کو مرتب، لیکن کبھی کبھی آپ کی طرف سے یہ چپکے سے کرنے کے قابل ہو سکتا ہے. یہ ایک اچھی بات ضروری نہیں ہے آپ کی طرف سے یہ چپکے سے کہ، اگرچہ. بس آپ کر رہے ہیں اگر ایسا ہے تو ایک عدم مساوات ٹیسٹ، آپ کے پاس دو کہ جانچ پڑتال کر رہے ہیں تو مختلف متغیر ایک ہی قیمت ہے ان کے اندر، استعمال کرنے کے لئے بات کو یقینی بنانے برابر ہے، اور واحد نہیں کے برابر ہے. اور اس طرح آپ کے پروگرام گا آپ کا ارادہ رکھتے رویے ہے. میں ڈوگ لایڈ ہوں اور اس CS50 ہے.