На Горох
Информатика

§ 1. Команда ветвления «ЕСЛИ–ТО»

"Информатика", Горячев А.В., Суворова Н.И.

Объяснение темы В оглавлении: § 1. Команда ветвления «ЕСЛИ–ТО»

Кратко о теме

Команда ветвления «ЕСЛИ–ТО» помогает алгоритму выбирать действия в зависимости от ситуации. Сначала проверяется условие — высказывание, которое может быть истинным или ложным. Если оно истинно, выполняется команда после слова «ТО»; если ложно, эта команда пропускается, а алгоритм продолжается дальше. Такая проверка нужна, чтобы учитывать исходные данные: например, менять число только тогда, когда оно делится на 2. Условие само по себе значения не меняет — оно определяет, какое действие выполнить.

Объяснение темы

Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.

Определения и обозначения

Команда ветвления «ЕСЛИ–ТО» — команда, которая предписывает выполнить действие только при истинном условии. Например, запись «ЕСЛИ N > 0 ТО вывести сообщение» означает, что сообщение появится лишь для положительного N. Если условие не подтвердилось, указанное действие пропускают. Такая команда позволяет алгоритму учитывать данные, а не выполнять одно и то же действие во всех случаях.

Условие — высказывание, для которого можно определить, истинно оно или ложно. Например, «число N больше нуля» можно проверить, подставив значение N. А фраза «N — хорошее число» не подходит: слово «хорошее» не задаёт ясного способа проверки. Условие нужно, чтобы алгоритм мог однозначно выбрать дальнейшее действие.

Истинность условия — это его значение «истина» или «ложь», от которого зависит выполнение команды. Например, если N = 5, условие N > 0 истинно, а если N = −2 — ложно. Результат проверки не является новым числом и не изменяет N. Он сообщает алгоритму, выполнять ли действие после «ТО».

Ветвление — выбор дальнейших действий алгоритма в зависимости от результата проверки условия. При истинном условии путь выполнения проходит через команду после «ТО», а при ложном — обходит её. Поэтому алгоритм может по-разному работать с разными исходными данными. Ветвление помогает описывать ситуации, в которых нужно принять решение.

Как это устроено

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

Команда имеет вид «ЕСЛИ условие ТО действие». Сначала алгоритм проверяет условие, а уже потом решает, что делать с указанной командой. Такой порядок нужен, чтобы не выполнять действие вслепую: сначала выясняется, соблюдено ли требование. Проверяемое высказывание должно давать один из двух результатов — истину или ложь.

Если условие истинно, команда после «ТО» выполняется. Например, если проверка N > 0 дала истину, алгоритм выводит сообщение о положительном числе. После этого он не останавливается автоматически, а продолжает работу со следующей командой. Значит, в алгоритме можно расположить дальнейшие действия после команды ветвления.

Если условие ложно, действие после «ТО» пропускается. Это не означает, что весь алгоритм прекращает работу: выполнение переходит к следующей команде, стоящей после ветвления. Такой порядок позволяет обойти действие, которое не подходит для текущих данных. Например, при ложной проверке делимости число останется прежним, если его не меняет другая команда.

В блок-схеме проверку условия обозначают ромбом, потому что из неё возможны разные пути выполнения. Выходы показывают, куда алгоритм направляется при истинном и ложном результатах; обычно их подписывают «да» и «нет». Команды действий изображают отдельно на соответствующих путях. По такой схеме можно проследить, какая команда выполняется при каждом исходе проверки.

Как выполняется команда «ЕСЛИ–ТО»

Сначала найди в таблице результат проверки условия. Затем посмотри, выполняется ли действие после «ТО» и куда алгоритм идёт дальше. Таблица показывает оба возможных исхода, поэтому по ней удобно проверять запись команды.

Результат проверки условияВыполнение действия после «ТО»Дальнейший ход алгоритма
Условие истинноДействие выполняетсяАлгоритм продолжает работу со следующей командой после выполненного действия
Условие ложноДействие пропускаетсяАлгоритм переходит к следующей команде

Разбор задач

Если число N больше нуля, вывести сообщение «Положительное»

Нужно вывести сообщение только для положительного числа, поэтому выражение N > 0 станет условием. Оно истинно, когда N больше нуля, и ложно для нуля или отрицательного числа. Само сообщение будет действием после «ТО».

  1. Запишем проверяемое условие: N > 0.
  2. Укажем действие, которое требуется при истинном результате: вывести сообщение «Положительное».
  3. Объединим условие и действие командой «ЕСЛИ–ТО». При ложном результате команда вывода пропускается.

Ответ: ЕСЛИ N > 0 ТО вывести «Положительное». Например, при N = 4 условие истинно и сообщение выводится. При N = 0 или N = −3 оно ложно, поэтому сообщение не выводится.

Если N делится на 2 без остатка, увеличить N на 1; затем вывести N

Делимость на 2 удобно проверять по остатку от деления: у чётного числа остаток равен нулю. Поэтому условие можно записать как N mod 2 = 0, где mod обозначает остаток от деления. Отдельную команду вывода поставим после ветвления, чтобы она сработала при любом результате проверки.

  1. Проверим условие N mod 2 = 0.
  2. Если оно истинно, выполним присваивание N = N + 1. Если условие ложно, число не изменится.
  3. После команды ветвления добавим вывод текущего значения N.

Ответ: ЕСЛИ N mod 2 = 0 ТО N = N + 1; вывести N. Например, для N = 8 условие истинно, после увеличения получаем 9. Для N = 7 условие ложно, поэтому выводится исходное значение 7.

Присвоить M большее из чисел A и B без «ИНАЧЕ»

Без команды «ИНАЧЕ» нужно предусмотреть присваивание отдельно для каждого возможного порядка чисел. Удобно сначала записать в M значение A, а затем проверить, не больше ли B. Если A < B, заменим M на B; если B < A, оставим в M значение A. При равенстве чисел начальное присваивание уже даёт нужный результат.

  1. Выполним первое присваивание: M = A. Теперь в M находится одно из двух чисел.
  2. Запишем проверку ЕСЛИ A < B ТО M = B. При истинном условии больше число B, поэтому значение M заменяется.
  3. Запишем проверку ЕСЛИ B < A ТО M = A. При истинном условии больше число A; если числа равны, обе проверки ложны и M остаётся равным A.

Ответ: M = A; ЕСЛИ A < B ТО M = B; ЕСЛИ B < A ТО M = A. При A = 3 и B = 8 первая проверка присвоит M значение 8. При A = 8 и B = 3 вторая проверка оставит в M значение 8, а при равных числах M будет равно их общему значению.

Типичные ошибки

Ошибка: считать, что действие после «ТО» выполняется всегда. Так думают, если воспринимают всю запись как обычный список команд и забывают о проверке. Проверь себя: подставь пример, при котором условие ложно, и проследи, пропускается ли действие.

Ошибка: не предусмотреть, что делать дальше при ложном условии. В команде без «ИНАЧЕ» действие после «ТО» пропускается, но алгоритм не обязан останавливаться. Чтобы проверить себя, посмотри, какая команда стоит следующей после ветвления и подходит ли она для обоих исходов.

Ошибка: использовать условие, истинность которого нельзя определить. Иногда вместо проверяемого признака записывают неопределённую оценку, например «N — большое». Проверь формулировку: для любых допустимых данных должно быть понятно, как получить ответ «истина» или «ложь».

Ошибка: путать проверку с изменением данных. Например, условие N > 0 лишь сообщает, положительно ли число, но не меняет N. Чтобы обнаружить путаницу, отдельно назови проверяемое высказывание и команду, которая действительно присваивает переменной новое значение.

Связь с другими темами

Для работы с ветвлением нужно уметь выполнять команды алгоритма по порядку, понимать, что такое высказывание, и определять его истинность. Эти знания помогают не перепутать проверку с действием и проследить результат команды. Ветвление используют в алгоритмах и программах, которые должны учитывать разные данные или ситуации. Далее можно изучать полную команду «ЕСЛИ–ТО–ИНАЧЕ» и составные логические условия: они позволяют задавать действия и проверки сложнее.

Что запомнить

  • Команда «ЕСЛИ–ТО» проверяет условие перед выполнением действия.
  • Условие должно быть истинным или ложным.
  • Если условие истинно, действие после «ТО» выполняется.
  • Если условие ложно, действие после «ТО» пропускается.
  • После пропуска действия алгоритм продолжается со следующей команды.
  • В блок-схеме проверку условия изображают ромбом.

Частые вопросы по теме

Что называют командой ветвления?

Это команда, которая позволяет алгоритму выбрать дальнейший ход в зависимости от результата проверки условия. В команде «ЕСЛИ–ТО» действие выполняется только при истинном условии.

Каким должно быть условие в команде «ЕСЛИ–ТО»?

Условие должно быть высказыванием, для которого можно определить, истинно оно или ложно. Например, «N больше нуля» — проверяемое условие.

Что происходит, если условие ложно?

Действие после «ТО» пропускается. Затем алгоритм переходит к следующей команде.

Выполняются ли команды после «ТО» всегда?

Нет, команда после «ТО» выполняется только тогда, когда условие истинно. Если оно ложно, эта команда не выполняется.

Чем команда «ЕСЛИ–ТО» отличается от команды «ЕСЛИ–ТО–ИНАЧЕ»?

В команде «ЕСЛИ–ТО» при ложном условии действие просто пропускается. В команде «ЕСЛИ–ТО–ИНАЧЕ» для этого случая предусмотрено другое действие после слова «ИНАЧЕ».

Спросить по теме параграфа

§ 1. Команда ветвления «ЕСЛИ–ТО»

Учебник

Оглавление →
Предмет
Информатика
Учебник
"Информатика", Горячев А.В., Суворова Н.И.