C++

Оператор if – неполная форма

Первый урок мы посвятили тому, что учились решить наши задачи линейно. Их логика заключалась в том, чтобы мы получили ответ прямо в лоб и никаких ответвлений или отхода в сторону от правил быть не могло. Например, если нам надо запросить какое-то число, мы его запрашиваем, если нам надо сложить два числа, мы их складываем. И так далее.

На втором уроке мы говорили про логические выражения. Логические выражения нам позволяли получить уже какую-то вариативность в результате. А сегодня мы поговорим о том: «Что же делать, если нам не хватает полного контроля над кодом»?

Условный оператор

Условный оператор – конструкция языка программирования, позволяющая выполнять различные наборы блоков кода в зависимости от результата вычисления логического выражения.

Сравнение возможностей линейного уравнения и условного оператора

Раньше у нас была линейная программа:

  1. Начало;
  2. Действие 1;
  3. Действие 2;
  4. Действие 3;
  5. Действие 4;
  6. Конец.

А что мы будем делать, если в одном случае нам надо выполнить одно действие, а в другом другое? Это мы уже будем называть ветвлением. Когда разные ветви кода выполняются при разных условиях.

Есть у нас начало программы, после этого выполнилось какое-то действие. После этого действия стоит условие. Если результатом этого условия будет 1, то мы выполним действие под номером 2. Если результатом условия будет 0? Мы выполним действие под номером 3. Что можно подразумевать под словом действие? Все что угодно. Мы можем запустить какую-либо функцию, можем вывести что-то на экран, можем запросить какие-либо дополнительные данные от пользователя и т.д. и т.п.

Но сегодня мы с вами пройдем только неполную форму условного оператора.

Для чего мы это делаем. Чтобы вы смогли понять то, что мы делаем. И главное, научиться работать с ограниченными возможностями. Безусловно, многие примеры можно решить быстрее и проще, но мы должны научиться решать тем способом, который изучили.

Неполная форма условного оператора

Неполная форма условного оператора

Неполная форма условного оператора – это когда кусочек кода будет выполнятся, если условие истинно (true). А если условие ложно (false), тогда ничего не произойдет. Например, если Иван опоздал на занятие, то сделать ему замечание, а в противном случае мы ничего не будем делать.

Наша программа будет двигаться сверху вниз, и будет проверять. Если условие true, то мы выполним то действие, которое нам необходимо по заданию. Если условие false, то действие не выполнится. Программа его проигнорирует. При этом, внутри нашего выражения, может быть сколько угодно других действий.

Синтаксис

Синтаксис неполной формы оператора if

Если (if) логическое выражение true, то мы будем выполнять те действия, которые записаны в фигурных скобках.

Вы можете встретить и такую запись

Синтаксис неполной формы оператора if

В C++ допускается не брать в скобки действие, если оно одно. Но лучшей практикой будет не использовать такую форму записи. К тому же бывают такие случаи, когда при такой форме записи, наша программа может сработать не так, как мы ожидаем, они редки, но все же случаются. Поэтому мы возьмем за правило, всегда использовать фигурные скобки.

Решение задач

Поменяй местами

Даны два числа a и b. Ваша программа должна поменять два числа местами, если a < b, после чего вывести их. При этом нельзя использовать дополнительные переменные. Формат входных данных
Даны два целых числа a и b (∣a∣,∣b∣ <= 109).
Формат выходных данных
Требуется вывести числа в том же формате, в котором они вводились.
Примеры
входные данные
3 5
11 4
выходные данные
5 3
11 4

Решение задачи поменяй местами

Положительные в квадрат

Даны три числа — a, b, c. Требуется возвести положительные числа в квадрат, а отрицательные оставить без изменений и вывести числа в том же порядке.

Формат входных данных
На единственной строке входного файла содержатся три целых числа (−104 <= a, b ,c <= 104).
Формат выходных данных
Единственная строка выходного файла должна содержать три получившихся числа: a, b и c в исходном порядке, где положительные возведены в квадрат, а отрицательные оставлены без изменений.

Решение задачи положительные в квадрат

Видео по теме урока

Tags

Related Articles

Leave a Reply

Back to top button
Close