خیلی خوب. پس به صحبت در مورد چیزی واقعا در programming-- مفید عبارات شرطی. عبارت شرطی بنابراین اجازه می دهد برنامه های خود را برای تصمیم گیری و مختلف چنگال در جاده، چیزی من به کمی پیشتر اشاره کردم، بسته به مقادیر متغیرهای، و یا بر اساس آنچه در ورودی های کاربر در برنامه نویس، در خط فرمان، و یا اگر شما یک اعلان یا چیزی شبیه به آن. C یک زن و شوهر از راه های مختلف به بیان عبارات شرطی، که ما نیز گاهی اوقات یک شاخه شرطی در برنامه خود را. و برخی از این حال رفتن به نگاه بسیار آشنا به شما، از ابتدا، بنابراین ما حتی به آنها را به جلو تا در کنار هم، فقط شما می توانید که قیاس در سر خود را. بنابراین، اگر یک if-- بسیار مشروط ساده. اگر شما از یاد ابتدا در سمت راست در اینجا شما می توانید پر کنید که در شش گوش است با بیان آبی اگر ماوس را پایین و یا اگر x کمتر از 10 باشد، یا چیزی شبیه به آن. و پس از آن، اگر x کمتر از 10 بود، و یا اگر ماوس در واقع، پایین، تمام کد داخل قطعه پازل را اجرا کند. تمام چیزهایی که مناسب در داخل که شکل C. به طور مشابه، آیا ما باید اگر در سمت چپ وجود دارد. اگر عبارت بولی، که من فقط با استفاده به عنوان یک جایگزین برای یکی از بولی عبارت ما قبلا بحث شد، آکولاد باز، آکولاد نزدیک است. بنابراین فکر می کنم باز فرفری بریس و آکولاد بسته عنوان مرتب سازی بر اساس شبیه به ساندویچ اثر بلوک if در سمت راست از ابتدا. اگر عبارت بولی در دستور if درست است، پس از آن همه خط کد بین آکولاد در اجرا خواهد شد از بالا تا پایین. اگر عبارت بولی نادرست است، ما جست و خیز بیش از همه چیز در بین آکولاد، چرا که تنها ما می خواهم به پایین که چنگال را در جاده اگر عبارت بولی درست است. ما می توانیم این گامی اگر بیشتر با دیگری. بنابراین این بلوک خراش است بسیار شبیه به یکی از ما شاهد یک ثانیه پیش، به جز آن دو مسیر مختلف بر اساس طول می کشد در چه اتفاقی می افتد. بنابراین اگر ماوس به طرف پایین بود، و یا اگر x کمتر از 10 بود، ما همه چیز را که در بین این کار را انجام که چنگال اول، که برای اولین بار C.، در غیر این صورت، اگر ماوس است ، و یا X است کمتر از 10، ما همه چیز را در مجموعه دوم را انجام دهد. و که شبیه به آنچه می بینید در اینجا برای بیان C. اگر بولی، انجام این مسائل بین اول آکولاد تنظیم شده است. دیگری، انجام این مسائل بین دوم آکولاد تنظیم شده است. بنابراین اگر بولی بیان درست است، ما انجام هر کاری را بین اولین مجموعه. اگر عبارت بولی است نادرست، که به دیگری را آغاز کند، و ما هر آنچه در انجام مجموعه دوم از آکولاد. باز هم، بالا به پایین، همه خطوط در بین پرانتز. در C، آن را ممکن است برای ایجاد از اگر-اگر دیگری دیگری، زنجیره ای. در واقع شما می توانید اگر-اگر دیگری دیگری، اگر-دیگری، اگر، و غیره و غیره و غیره بر. در ابتدا، این مورد نیاز تودرتو بلوک. شما اضافه کردن یک IF-دیگری، و شما را به حال قرار دادن یک دیگر در داخل از دیگری، و غیره، و آن هم از نوع کردم از تو در تو و پیچیده است. اما C، ما مجبور به انجام این کار. ما در واقع می تواند فقط باید آن را به یک زنجیره از این دوباره، به عنوان شما ممکن است انتظار، همه از این شاخه متقابلا منحصر به فرد. شما فقط می توانید تا کنون پایین یکی از شعبه. اگر این درست است. در غیر این صورت، اگر این درست است. در غیر این صورت، اگر این درست است. در غیر این صورت، این کار را. بنابراین هر چهار شاخه در این به عنوان مثال متقابلا منحصر به فرد هستند. اگر-دیگری زنجیره IF-دیگری است. ممکن است هر چند، و گاهی اوقات بسیار مفید است، برای ایجاد یک زنجیره نه شاخه متقابلا منحصر به فرد. در این مثال، تنها سوم و شاخه چهارم متقابلا منحصر به فرد. این می تواند که شما می تواند شرط اول، و شما می توانید برآورده شرط دوم، و شما می توانید برآورده condition-- سوم که در این صورت شما می به پایین شاخه اول، پس از آن شما را به پایین شاخه دوم، سپس شما می توانید به پایین شعبه سوم. یا شاید شما اولین برآورده شرایط و شرط دوم، اما شما راضی نیست شرط سوم. در این مورد شما پایین اول شاخه و شعبه دوم، و پس از آن شعبه چهارم، دلیل این کار این است که دیگری تنها به نزدیکترین اگر متصل شوند. بنابراین حتی اگر وجود دارد یک else در اینجا، که لزوما ایجاد یک متقابل زنجیره ای منحصر به فرد از همه چیز. این تنها بیان است با بولی بیان 3-- که این متقابلا منحصر به فرد با دیگری. بنابراین ممکن است، و گاهی اوقات بسیار مفید است، همانطور که گفتم، برای ایجاد یک زنجیره ای از شاخه متقابلا منحصر به فرد نیست. اجازه دهید یک نگاه متفاوت نوع شرطی که شما قبل از در ابتدا دیده نمی شود. چیزی به نام وجود دارد دستور switch. دستور switch است نوع شسته و رفته به خاطر آن یک عبارت شرطی که اجازه می دهد تا شما برای مشخص موارد متفاوت، به جای تکیه بر بولی عبارت را به تصمیم گیری برای شما. بنابراین برای مثال، اجازه دهید بگویم که من این برنامه، و من درخواست کاربر به ارائه ورودی به من. بنابراین من می گویم، اعضای هیات ایکس = مطلع INT ()، و اگر شما آشنا نشده است، روی int یک تابع است که نیز در کتابخانه CS50 شامل، بنابراین اگر شما می # شامل CS50.H شما باید دسترسی به INT () و همه از آن cousins-- GetFloat، از GetString، و غیره. اساسا یک مطلع تابع برای هر نوع داده که ما در حال حاضر مورد بحث قرار گرفته است. بنابراین اعضای هیات x برابر GetInt. اساسا آنچه اتفاق می افتد این است که من در ترمینال است. من درخواست کاربر را به عدد تایپ کنید. و در اینجا من سوئیچینگ آنچه من انجام، بسته در آنچه را که کاربر تایپ در اعلان بنابراین اگر آنها تایپ یکی، من نسخه قابل چاپ کردن است. و بعد من را بشکند. اگر آنها نوع دو، من نسخه قابل چاپ کردن دو. و بعد من را بشکند. آن را به مهم استراحت بین هر مورد زیرا در غیر این شما را از طریق سقوط خواهد کرد. بنابراین اگر من هیچ ندارد معافیت وجود دارد، و کاربر یکی از تایپ شده، چه اتفاقی خواهد افتاد آن است یکی، دو، سه چاپ، با عرض پوزش. این نوع از رفتار عجیب و غریب، درست است؟ شما ممکن است فکر می کنم تا. اما در واقع برخی از موارد وجود دارد که در آن این می تواند یک چیز بسیار مفید است. بنابراین در اینجا یک مثال دیگر از یک سوئیچ است بیانیه که در آن من حذف معافیت. اما من این کار را در هدف. بنابراین چه اتفاقی می افتد؟ فکر می کنم برای یک ثانیه. شما حتی ممکن است بخواهید به مکث ویدیو. اگر اتفاق می افتد در اینجا نوع کاربر چهار؟ بنابراین من کاربر برای ورودی خواسته ایم. و آنها را فراهم ارزش 4. چه می شود چاپ شده در هنگامی توانم انجام دهم؟ در اسلاید قبلی وجود دارد، استراحت بین همه موارد. و به این ترتیب آن را فقط چاپ چهار و سپس متوقف شود. اما در این مورد، آن را نمی خواهد. چه اتفاقی می افتد شما است را از طریق هر مورد می گیرند. بنابراین در این مورد من من موارد سازماندهی کرده اید در چنین راهی که اگر نوع کاربر 4، من چاپ خواهد شد چهار، سه، دو، یک، انفجار. و اگر آنها تایپ 5، من شروع در پنج و همین کار را. اگر آنها تایپ 1، من می خواهم فقط یک، انفجار است. بنابراین در این مورد، من با استفاده از یک سوئیچ نوع هوشمندانه تا که من قصد به سقوط از طریق تمام موارد. اما به طور کلی شما احتمالا میخوای می خواهید برای شکستن بین همه آنها، مگر اینکه شما یک وضعیت مثل این یکی که در آن شما نوع اعمال نفوذ این واقعیت است که شما از طریق موارد سقوط بدون استراحت. به طوری که دوم از عمده است نوع عبارات شرطی. که آخرین آن است: بنابراین من دو قطعه از کد C در اینجا. یکی در سمت چپ و یکی در سمت راست. یکی در سمت چپ باید احتمالا بسیار آشنا به شما باشد. من نوع int x. و من احتمالا باید کاربر خواسته اند for-- این احتمالا باید نوع int x برابر GetInt، و یا چیزی شبیه به آن. و سپس من از اتخاذ تصمیم. اگر برخی از عبارت بولی است درست است، اختصاص X مقدار 5. در غیر این صورت، اختصاص X مقدار 6. که در سمت چپ احتمالا باید بسیار آشنا از بحث ما اگر دیگر از فقط یک لحظه پیش. دوست تعجب می دانیم شما که خط در سمت راست همین کار را دقیق؟ پس این است که به نام: و یا گاهی اوقات نام اپراتور سه تایی. و آن را بسیار سرد است. آن را معمولا به عنوان یک ترفند زیبا استفاده می شود. اما آنچه در آن اجازه می دهد تا شما را به انجام است به شبیه سازی یک اگر دیگری با واقعا کوچک است، واقعا بدیهی کوتاه شاخه شرطی. شما به طور کلی به استفاده از: اگر شما شش خط کد بین هر مجموعه به حال پرانتز فرفری. اما اگر شما فقط هستید تصمیم گیری سریع، اگر شما در حال رفتن به یک چیز یا از سوی دیگر و از آن بسیار ساده است، این ممکن است یک مثال از چگونگی این کار را با: اپراتور سه تایی. بنابراین اعضای هیات x برابر بیان؟ نکته پس از درخواست علامت گذاری به عنوان ارزش آنچه الف است خواهد بود اگر بیان درست است. نکته پس از روده بزرگ چه مقدار x است خواهد بود اگر بیان نادرست است. بنابراین من خودم می پرسم، بیان درست است؟ اگر از آن است، اختصاص X مقدار 5. اگر این طور نیست، اختصاص X مقدار 6. باز هم، مثل من گفت. این است که معمولا فقط یک ترفند زیبا. و گاهی اوقات اگر شما تبدیل به واقعا راحت با آن، شما این را انجام دهد چرا که به نظر می رسد نوع سرد در برنامه های خود را. به طور کلی من آن را ارائه به شما در حال حاضر، بنابراین شما با آن آشنا هستید اگر شما آن را ببینید. اما قطعا می دانم که شما لازم نیست به آن ارسال در هر یک از کد خود را. اما آن چیزی است که باید با آن آشنا، چون شما قطعا باید روبرو می شوند قطعه از کد را در اینجا و وجود دارد که در آن این: نحو، AKA اپراتور سه تایی، استفاده شده است. خلاصه خیلی سریع در چه شرطی هستند، و چه گزینه های در دسترس به شما در C. شما اگر و اگر، دیگری، و اگر دیگری اگر، و غیره. شما می توانید عبارات بولی استفاده برای کسانی که به تصمیم گیری. با دستور switch استفاده می کنید موارد گسسته به تصمیم گیری. شما به طور خاص می گویند، اگر آن را یکی، یا اگر آن را دو، و یا اگر آن سه، من این چیزی که می خواهید انجام دهید، و یا این چیز، و یا این چیز. و: می توانید مورد استفاده قرار گیرد به جای شاخه IF-دیگری بسیار ساده است، و یا اگر-دیگری زنجیر به کد خود را نگاه فانتزی است. من داگ لوید هستم. و این CS50.