Все в порядке. Так что теперь давайте поговорим о чем-то очень полезно в programming-- условные операторы. Так условные выражения позволяют ваши программы чтобы принимать решения и разные вилки в дороге, то Я ссылался на немного раньше, в зависимости от значений переменных, или на основе того, что пользователь вводит в программист, в командной строке, или если у вас есть приглашение или что-то вроде того. С имеет несколько различных способов выразить условные выражения, которые мы также иногда будет вызывать условный переход в ваших программах. И некоторые из них будут смотреть очень знакомо вам с нуля, так что мы даже тянуть их бок о бок, как раз Вы можете сделать эту аналогию в вашей голове. Так, если if-- довольно просто условно. Если вы помните из царапина на правом здесь Вы могли бы заполнить это шестиугольник с синим выражения, если мышь вниз или если х меньше 10, или что-то вроде того. И тогда, если х меньше 10, или, если мышь на самом деле, вниз, весь код внутренней части кусок головоломки будет выполнять. Все вещи, которые соответствуют внутри этой формы C. Точно так же, у нас есть если слева нет. Если логическое выражение, который я только с помощью в качестве заменителя одного из Boolean выражения мы ранее, открыт фигурная скобка, недалеко фигурная скобка. Так что думайте открытого кудрявых скобка и закрытый фигурная скобка как своего рода аналогом бутерброд эффект, если блок на правой с нуля. Если логическое выражение в заявлении, если это правда, то все строки кода между фигурными скобками будет выполняться в порядке сверху вниз. Если логическое выражение является ложным, мы будем пропустить все между фигурные скобки, потому что мы только хочу пойти вниз, что вилка в дороге если логическое выражение истинно. Мы можем принять это еще один шаг далее с тем, если еще. Так что это царапинам блок очень похож на тот, мы видели только секунду назад, за исключением он принимает два различных пути, основанные о том, что происходит. Таким образом, если мышь была вниз, или если х было меньше, чем 10, мы сделаем всё, что в период между что в первую вилки, что в первую С., В противном случае, если мышь до, или х не меньше, чем 10, мы сделаем все, во втором сете. И это аналогично тому, что вы видите здесь C. Если логическое выражение, сделать вещи между первый набор фигурных скобках. В противном случае, сделать вещи между второй набор фигурных скобок. Так что, если логическое выражение истинно, мы будем делать все, что находится между первым набором. Если логическое выражение ложь, что бы курок еще, и мы хотели бы сделать что бы ни в второй набор фигурных скобках. Опять же, сверху вниз, все линии в между скобками. В C, это возможно, чтобы создать ПЧ-то еще, если-иначе цепь. На самом деле вы можете иметь, если-иначе, если-иначе если-иначе, если, и так далее, и так далее, и так на. В пустом, для этого требуется гнездования блоки. Вы добавьте, если-иначе, и вы должны были положил еще один внутри еще, и так далее, и он получил вид вложенных и сложным. Но С, мы не должны этого делать. Мы можем на самом деле просто это будет цепочка, как это. Опять же, как вы могли бы ожидать, все эти ветви являются взаимоисключающими. Вы можете только когда-нибудь по одному из филиала. Если это правда. В противном случае, если это правда. В противном случае, если это правда. В противном случае, сделать это. Таким образом, все четыре ветви в этот Пример являются взаимоисключающими. Это, если-иначе, если-иначе цепь. Возможно, хотя, а иногда и очень полезно, создать цепочку не взаимоисключающие филиалы. В этом примере, только третий и четвертый филиалы являются взаимоисключающими. Это может быть, что вы могли бы удовлетворяет первому условию, и вы могли бы удовлетворить второе условие, и вы могли бы удовлетворить третья condition-- в этом случае Вы бы пойти вниз первое отделение, Затем вы спуститесь второй филиал, то вы бы спуститься третью ветвь. Или, возможно, вы удовлетворяете первым состояние, а второе условие, но вы не удовлетворяют третье условие. В этом случае вы спуститесь первым Филиал и вторая ветвь, а затем четвертый филиал, Причина этого в том, что еще будет связываться только с ближайшим если. Поэтому, даже если есть еще здесь, что не обязательно создает взаимно Эксклюзивный цепь все. Это только выражение там с Boolean Выражение 3-- это взаимоисключающими с еще. Так что, возможно, и иногда весьма полезно, как я уже сказал, чтобы создать цепочку не взаимоисключающие филиалы. Давайте взглянем на другой вид условного, что Вы не видели прежде в царапина. Там что-то называется переключатель заявлении. В заявлении переключатель вид аккуратно, потому что это условный оператор, который позволяет указать различные случаи, вместо того, чтобы полагаться на логическое выражения для принятия решений для Вас. Так, например, скажем, что у меня есть эта программа, и я прошу пользователю внести вклад в меня. Поэтому я говорю, INT х = Получить Int (), и если вы не знакомы еще, получить Int является функция, также включены в библиотеке CS50, так что если вы #include CS50.H вы будете иметь Получить доступ к Int () и все его cousins-- GetFloat, GetString, и так далее. В основном одно получает функцию для каждого тип данных, который мы уже обсуждали. Так Int х равен GetInt. В основном то, что происходит это я на терминале. Я спрашиваю пользователю ввести номер. И вот я переключения то, что я делаю, в зависимости на то, что пользователь ввел в командной строке. Так что, если они ввели один, я распечатать одно. И тогда я нарушу. Если они типа два, я распечатать два. И тогда я нарушу. Важно разрыв между каждом случае потому что иначе вы провалитесь. Так что, если у меня не было какой-либо перерывы там, и пользователь типизированных одним, что случится это будет печатать один, два, три, извините. Это своего рода странным поведением, верно? Вы могли бы так думать. Но на самом деле там некоторых случаях, когда это может быть довольно полезная вещь. Так вот еще один пример переключателя Заявление, где я опускаю перерывы. Но я делаю это нарочно. Так что здесь происходит? Задумайтесь на секунду. Вы даже можете приостановить видео. Что происходит здесь, если пользователь вводит четыре? Так что я спросил у пользователя ввод. И они обеспечивают значение 4. Что печатается, когда я это сделать? На предыдущем слайде, были перерывы между всех случаях. И так бы просто распечатать четырех, а затем остановиться. Но в данном случае, это не будет. Что случится, вам провалится каждом случае. Таким образом, в этом случае я организовал моих дел таким образом, что если пользователь 4, Я печатать четыре, три, два, один, взлетать. И если они набрали 5, я хотел бы начать в пять и делать то же самое. Если они набрали 1, я бы просто сделать один, взлетать. Таким образом, в этом случае, я использую переключатель вид ловко так что я намерен попасть через всех случаях. Но в целом вы, вероятно, собирается хотим сломать между всеми из них, если у вас есть ситуации, как этот, где вы вид используя тот факт, что вы будете провалиться случаях без перерыва. Так вот второй из важнейших Типы условных операторов. Последний из которых является: Так что я есть два фрагменты кода C здесь. Один слева и один справа. Тот слева должны вероятно, будет довольно знакомым. У меня есть Int х. И я, вероятно, следует попросили пользователя for-- это, вероятно, следует Int х равна GetInt, или что-то подобное. И тогда я принятия решения. Если некоторые логическое выражение является правда, назначить х значение 5. В противном случае, назначить х значение 6. Это слева, вероятно, следует довольно хорошо знакомы с нашей дискуссии Если в остальное просто мгновение назад. Вы были бы удивлены знать, что линии справа делает ту же самую вещь? Итак, это называется: иногда называется тройной оператор. И это очень здорово. Это, как правило, используется в качестве милый трюк. Но то, что он позволяет сделать, это имитировать If Else с действительно небольшой, действительно тривиально короткий условные переходы. Вы вообще не использовать: если вы шесть строк кода между каждым набором из фигурные скобки. Но если вы просто что делает быстрое решение, если вы собираетесь сделать одну вещь или другой, и это очень просто, это может быть пример того, как сделать это с: тройной оператор. Так Int х равен выражение? Дело после вопроса знак того, что Х значение будет, если выражение истинно. Дело после толстой кишки, что Х значение если бы выражение было ложным. Вот я и спрашиваю себя, это выражение верно? Если это так, присвоить х значение 5. Если это не так, назначьте х значение 6. Опять же, как я сказал. Это, как правило, просто уловка. А иногда, если вы стали действительно комфортно с ним, вы будете делать это, потому что это выглядит круто в ваших программах. Вообще я представляю его Вы сейчас так вы знакомы с ним если вы его видите. Но, конечно, знаю, что вы не должны написать его в любой из вашего кода. Но это что-то, чтобы быть знакомы с, потому что вы будете определенно сталкиваться фрагменты кода здесь и там, где это? синтаксиса, АКА тройной оператор, используется. Так краткий обзор на то, что условные являются, и то, что варианты Вам в С вас, если, и если-иначе, и если еще, если, и так далее. Вы можете использовать логические выражения для тех, для принятия решений. С переключателем заявления вы используете дискретные случаи, чтобы принимать решения. Вы бы специально сказать, что если это Один из них, или, если это два, или, если это три, Я сделаю это, или эта вещь, или это дело. И: может быть использован для замены очень просто, если-иначе филиалов, или если-иначе цепи, чтобы сделать код выглядеть немного фантазии. Я Дуг Ллойд. И это CS50.