[موسیقی] داگ لوید: سلام، بنابراین اجازه دهید صحبت در مورد اپراتورها در C. بنابراین، ما در حال حاضر دیده یکی، در واقع، برابر عملگر انتساب. این اجازه می دهد تا ما را به فقط با قرار دادن یک مقدار به یک متغیر است. که انتساب است اپراتور، علامت مساوی است. به منظور دستکاری و کار با ارزش ها و متغیرها در C، ما تعدادی از اپراتورهای در اختیار ما است که ما می توانید استفاده کنید. اجازه دهید یک نگاه برخی از آنهایی که رایج با شروع از عملگرهای محاسباتی. همانطور که شما ممکن است انتظار، ما می توانیم انجام عملیات ریاضی پایه زیبا در C. ما می توانیم اضافه کردن، تفریق، ضرب، و تعداد شکاف با استفاده از به علاوه، منفی، ستاره، و بریده بریده بود. در اینجا به چند خط است کد که در آن ما را انجام دهد. بنابراین، ما باید از نوع int x برابر y به علاوه 1. بیایید فرض کنیم که جایی در بالا این خط از کد ما گفته بود INT y برابر 10. مقدار x پس از چیست اجرای این اولین خط از کد؟ به شما می گویند 11؟ شما می خواهم راست. چرا چنین است؟ خب، Y 10 بود. برخی از اعضای هیات من گفت: x برابر 10 به علاوه 1. 10 به علاوه 1 11 است. بنابراین، ارزش 11 می شود ذخیره شده در متغیر x است. خیلی بد، درست است؟ چگونه در مورد این خط بعد از کد؟ X برابر است با حاصلضرب × 5. خب، قبل از اعدام ما این خط از کد، X 11 بود. بنابراین، آنچه ارزش است X بعد این خط از کد؟ یک دوم. پس، x برابر است با حاصلضرب × 5. × 11 بود. بنابراین، x برابر 11 بار 5. یا 55. بنابراین اگر شما گفت 55، شما می شود، مناسب است. در حال حاضر، ممکن است کمی گیج کننده است، اما با روشی که انتساب این نسخهها کار در C است که مقدار سمت راست می شود اختصاص داده شده به ارزش در سمت چپ. بنابراین، اولین بار ما ارزیابی X 5. بنابراین، 11 بار 5 55 است. و سپس ما آن مقدار را در X را ذخیره کنید. 11 که وجود دارد در حال حاضر قبل از رونویسی. بنابراین مقدار x در حال حاضر 55. امیدوارم که نسبتا ساده. این اپراتور دیگر که شما ام وجود دارد احتمالا لزوما شنیده نمی نام این، اما شما قطعا با در گذشته کار کرده اگر شما روز خود را از طولانی به یاد داشته باشید بخش راه بازگشت در مدرسه ابتدائی. این عملگر نامیده می شود. چه مدول کند آن به شما می دهد باقی مانده زمانی که دو عدد را با هم تقسیم می کنند. بنابراین، اگر من می گویم 13 تقسیم بر 4، آنچه باقی مانده است؟ و آن مقدار را محاسبه شود توسط اپراتور مدول. بنابراین، من یک خط از کد در اینجا، اعضای هیات m برابر با 13 MOD 4. و من در اینجا در یک نظر گویند ارزش است که متر است در حال حاضر 1. چرا می گویند که من؟ خب، آیا تقسیم طولانی در خود سر، اگر شما با من را تحمل برای یک ثانیه. بنابراین، من 4 تقسیم بر 13. 4 می رود به 13 سه بار با باقی مانده از 1. بنابراین، در واقع، تمام عملگر می کند است آن را به شما می گوید که شما تقسیم، شما باقی مانده است. شما ممکن است فکر می کنم که در واقع یک چیز خیلی مفید، اما شما می شود شگفت زده کرد، در واقع، چگونه اغلب که مدول اپراتور می تواند در مفید آمده است. یک زن و شوهر از مشکلات وجود دارد ما CS50 که با آن برخورد خواهم کرد. آن را نیز خوب برای انجام چیزهایی مانند عدد تصادفی است. بنابراین، برای مثال اگر شما تا کنون از یک مولد عدد تصادفی شنیده می شود، که رفتن به شما یک شماره را از 0 تا برخی تعداد زیادی. اما شاید شما تنها واقعا نیاز به یک شماره 0-20. اگر شما استفاده از عملگر مدول که تعداد غول پیکر است که می شود توسط تولید مولد عدد تصادفی، شما در حال رفتن به هر ارزش های بزرگ آن است، آن را تقسیم بر 20 و باقی مانده است. باقی مانده تنها می تواند یک مقدار 0-19. بنابراین، شما با استفاده از عملگر به این تعداد زیادی و عدد آن را به چیزی کمی بیشتر معنی دار. من کاملا مطمئن هستم که شما هستم قادر به استفاده از هر دو از آن در برخی از نقطه در آینده در CS50. بنابراین، C را نیز به ما می دهد یک راه برای اعمال یک حساب اپراتور به یک متغیر واحد در یک راه مختصر تر است. بنابراین، در اسلاید قبلی، ما شاهد X برابر است با حاصلضرب × 5. که کار می کرد. X بار 5 پس از آن می شود در X ذخیره می شود. یک راه کوتاه تر به انجام آن وجود دارد، فکر، و آن را به نحو بار x برابر 5. این دقیقا همان است گفت X برابر است با حاصلضرب × 5. این فقط یک کمی راه کوتاه تر به انجام آن. و هنگامی که می بینید برخی از کد توزیع و یا شما برخی از نمونه کد دید که همه چیز شبیه به این، فقط با آن آشنا باشد چه نحو معنی. شما قطعا لازم نیست برای استفاده از آن، اما اگر شما انجام دهید، ممکن کد خود را نگاه یک حقه باز است. و می دانم که شما همچنین می توانید هر یک از استفاده اپراتورهای مختلف ما در حال حاضر قبل از به جای دوران دیده می شود. می توان گفت با X به علاوه برابر با 5، منهای برابر با 5، زمان، تقسیم، و وزارت دفاع. تمام کسانی که کار می کنند. همچنین چیزی وجود دارد که بسیار رایج در C که ما به تصمیم گرفتم اصلاح که حتی بیشتر است. افزایش یک متغیر 1 و یا طرح ساده یک متغیر 1 چنین thing-- مشترک ویژه است وقتی صحبت ما در مورد حلقه کمی بعد شماها که ما به جای تصمیم گرفتم گفت: چیزی شبیه X به علاوه برابر با 1، یا x برابر است با X به علاوه 1، ما حتی کوتاه است که به x به علاوه به علاوه تحویل داده شد. پس، x برابر است با X به علاوه 1، X به علاوه برابر با 1، و X به علاوه به علاوه تمام همین کار را. آنها تمام x های افزایش 1. اما این افزایش طرح ساده 1 آنقدر مرسوم است که ما داریم این است به علاوه به علاوه و منهای منهای که به ما اجازه مختصر که حتی بیشتر است. بنابراین، اجازه دهید قرا دوم و بحث در مورد عبارات بولی. همه که نوع نیز سقوط به رده کلی اپراتورهای. اما عبارات بولی، بر خلاف عملگرهای محاسباتی، برای مقایسه مقادیر استفاده می شود. پس، دوباره، همه عبارات بولی در C ارزیابی به یکی از دو مقدار ممکن، به یاد. درست یا غلط. این تنها دو مقدار که متغیر بولی می تواند بر روی کنند. ما می توانیم نتایج استفاده از یک عبارت بولی در بسیاری از راه های در برنامه نویسی. در واقع، شما خواهید بود انجام این کار بسیار زیادی است. برای مثال، ما ممکن است تصمیم، خوب، اگر برخی شرط درست باشد، شاید من این را شاخه پایین کد من. مشروط، پس به صحبت می کنند. ما در مورد کسانی که به زودی بیش از حد را یاد بگیرند. یا شاید، تا زمانی که این درست است، من می خواهم به انجام این و بیش از بیش و بیش از. یک حلقه. در هر دو مورد، می دانم که ما با استفاده از یک عبارت بولی، یک درست یا غلط، به تصمیم گیری یا نه را به یک مسیر خاص است. گاهی اوقات هنگامی که ما در حال کار با عبارات بولی، ما متغیرهای نوع بولی استفاده کنید. شما ممکن است اعلام بولی تایپ متغیر، و شما را در استفاده از خود را عبارت بولی باشد. اما شما همیشه نمی باید انجام دهید. همانطور که معلوم است، در C، هر غیر 0 ارزش همان عنوان کرد و گفت درست است. اگر شما اعلام کرده بود متغیر از نوع Boolean، و اختصاص آن ارزش واقعی، که به مانند اعلان یک عدد صحیح و اختصاص آن ارزش 1، 2، 3، و یا واقعا هر مقدار آنچه به غیر از 0. از آنجا که در C، هر غیر 0 ارزش واقعی است. 0، از سوی دیگر، نادرست است. این ممکن است در آمده دستی بعدا در به دانستن، اما تنها چیزی است که در ذهن داشته باشیم. ما همیشه باید به استفاده از متغیرهای بولین نوع هنگامی که ما در حال کار با عبارات بولی. دو نوع اصلی از بولی وجود دارد عبارت که ما با کار. عملگرهای منطقی و عملگرهای رابطه ای. زبان وجود دارد خیلی مهم است. این واقعا فقط من آنها را گروه بندی. و شما قطعا، من فکر می کنم، به سرعت بدان که چه عملگر رابطه است، بر اساس آنچه هستند که ما صحبت در مورد آنها در یک ثانیه. اما نگران نباشید در مورد لزوما حفظ عملگر منطقی مدت و یا عملگر رابطه. من فقط با استفاده از آن به گروه آنها را در یک راه منطقی است. بنابراین، اجازه دهید نگاهی به سه عملگرهای منطقی که ما کاملا ببینید کمی در برنامه نویسی در CS50 و در برنامه نویسی به طور کلی. منطقی و درست است، اگر و تنها در صورتی که هر دو عملوند درست است. در غیر این صورت نادرست است. که در آن معنا است؟ بنابراین، اجازه دهید بگویم که من در یک هستم اشاره در کد من که در آن من دو متغیر x و y. و من می خواهم به تصمیم بگیرد که آیا برای انجام کاری در کد من بر اساس اگر x درست است و y درست است. من فقط می خواهم به انجام آن اگر هر دو آنها درست باشد، در غیر این صورت من نمی خواهم به پایین که مسیر به دلیل آن را به من کمک کند. اگر x و Y و آنچه می توانم بگویم است. خواهد شد که یک بولی منطقی بیان x و y مقایسه و در نظر گرفتن یک مسیر خاص بر اساس آنچه ارزش های خود را می باشد. بنابراین، اگر x درست است و y درست است بر اساس این جدول درستی در اینجا، تنها پس از آن ما بروید پایین این مسیر است. اگر x و Y و. آن را تنها true-- و تنها اگر x و y درست است درست است. اگر هم غلط است؛ به ما می بینیم جدول درستی، پس از آن X و Y هستند درست نیست. و بنابراین، X و Y و نادرست است. منطقی یا اگر و تنها درست است اگر حداقل یک عملوند درست است. در غیر این صورت نادرست است. بنابراین منطقی و مورد نیاز X و Y درست باشد. منطقی یا نیاز به X درست باشد یا y درست باشد یا هر دو x و y درست باشد. پس، دوباره، ما به نوعی پیدا خودمان را در یک وضعیت که در آن ما در حال رفتن به کد ما، و ما یک چنگال را در جاده رسیده است. و ما می خواهیم به پایین مسیر خاص اگر x درست است یا درست است، اما نه لزوما اگر هر دو درست هستند. اما احتمالا اگر هر دو درست هستند. بنابراین اگر x و y درست است است درست است، ما این مسیر را بروید. x درست است. یکی از آنها درست است، درست است؟ اگر x درست است و y درست است. اگر x درست است، و y غلط، یکی از آنها هنوز هم درست است. بنابراین، X و Y است که هنوز هم درست است. اگر x نادرست است، و y درست است، یکی از آنها هنوز هم درست است، درست است؟ y درست است، در این مورد. بنابراین، این درست است که x یا y درست است. تنها اگر x نادرست است و y غلط ما نه به پایین این مسیر، چرا که نه X و نه y درست است. در حال حاضر، اگر شما به دنبال در روی صفحه نمایش در حال حاضر و تعجب آنچه که نماد است برای منطقی OR، آن را به نام نوار عمودی. و اگر شما به دنبال در صفحه کلید خود را برای یک دقیقه، به عنوان من در حال حاضر انجام می دهند، آن را معمولا فقط بالا کلید را وارد کنید، در اکثر صفحه کلید، در همان کلید به عنوان بک اسلش. آن را نیز معمولا درست در کنار براکت مربع است. بنابراین، ممکن است آن را یک کلید است که شما بسیار زیادی را در گذشته تایپ نیست. اما، اگر شما تا به حال انجام مقایسه های منطقی، همانطور که ما به انجام یک بسیاری در این دوره، آن را رفتن به مفید باشد پیدا است که کلید و استفاده از آن. بنابراین، آن را معمولا در همان کلید به عنوان بک اسلش فقط بالا را وارد کنید. اپراتور منطقی نهایی است. و نه بسیار ساده. این معکوس ارزش عملوند آن است. اگر x درست باشد، پس نمی X نادرست است. اگر x نادرست است، پس از آن نمی x درست است. گاهی اوقات شما این نماد را بشنود تلفظ به عنوان انفجار یا علامت تعجب یا نه. این تقریبا تمام همان چیزی است. در صورتی که شما می شنوید که سخن گفته و شما مطمئن آنچه که به معنی نیست، آن را فقط علامت تعجب نقطه، اما گاهی اوقات آن را به نام یک زن و شوهر چیز متفاوت است. همه حق است، به طوری که طول می کشد مراقبت از عملگرهای منطقی. بنابراین، اجازه دهید بحث در مورد عملگرهای رابطه ای. باز هم، اگر شما با این آشنا هستید حساب تماس در مدرسه، شما احتمالا آشنا هستید با این کار در حال حاضر. این رفتار دقیقا همانطور که می دانید. بنابراین کمتر از آن درست است، در این به عنوان مثال، اگر x کمتر از y است. بنابراین، اگر x و y است 4 است 6، x کمتر از y است. درست است. کمتر از یا مساوی با آثار بسیار مشابه. اگر x 4 و y است 4، پس از آن x کمتر از یا برابر با y است. بزرگتر از. x بزرگتر از y است. و بزرگتر از یا به، مساوی x بزرگتر یا مساوی به y است. اگر این درست است، و سپس شما تصویب است که بیان، و شما را پایین خواهم رفت که راه در جاده ها. اگر شما یک اگر x بزرگتر است از ب، و x است، در واقع، بیشتر از y باشد، شما انجام هر کاری است موضوع را به آن شرایط. توجه داشته باشید که ما یک ندارد شخصیت واحد کمتر از یا مساوی، به عنوان شما ممکن است آشنا با کتاب های درسی ریاضی از. بنابراین، ما باید کمتر از نماد، به دنبال آن یک علامت مساوی. این که چگونه ما نشان کمتر از یا مساوی. و به همین ترتیب، ما انجام این کار برای بزرگتر یا مساوی. دو نهایی رابطه اپراتورهای که مهم هستند در حال آزمایش برای برابری و نابرابری است. بنابراین، اگر x برابر برابر y درست است اگر ارزش x و y را همان است. اگر x 10 است، و y 10 است، پس از آن X برابر برابر y درست است. اگر x و y است 10 11، X برابر برابر Y درست نیست. ما همچنین می توانید برای نابرابری با استفاده از آزمون علامت تعجب یا انفجار یا نه، از نو. اگر x با y برابر نیست، اگر که ما با استفاده از آزمون در اینجا، ما می شود خوب به آن بروید. بنابراین، اگر x برابر نیست Y، ما این مسیر را بروید. واقعا مراقب باشید در اینجا. این mistake-- واقعا مشترک است و من قطعا بسیار زیادی که من started-- گرفتن به طور تصادفی اشتباه عملگر انتساب، برابر تک، برای عملگر مقایسه برابری، برابر دو برابر شود. آن را به برخی از عجیب و غریب منجر رفتار در کد خود را، و معمولا کامپایلر شما هشدار می دهند مورد آن زمانی که شما سعی می کنید و کامپایل کد خود را، اما گاهی اوقات شما ممکن است قادر به آن دزدکی حرکت کردن توسط. این نه لزوما چیز خوبی که شما آن را دزدکی حرکت کردن توسط، هر چند. فقط بنابراین اگر شما در حال انجام آزمون نابرابری، اگر شما در حال چک کردن اینکه آیا دو متغیرهای مختلف همان مقدار در داخل از آنها، مطمئن شوید که به استفاده از برابر است با برابر، و برابر واحد است. و به این ترتیب برنامه شما دارند رفتار شما قصد. من داگ لوید هستم و این CS50 است.