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

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

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

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

Кратко о теме

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

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

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

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

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

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

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

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

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

Алгоритму может понадобиться выбор действий, потому что одинаковая последовательность команд не всегда подходит для разных исходных данных. Например, при проверке числа нужно сообщить о чётности или нечётности, а ответ зависит от самого числа. Если заранее записать только одно сообщение, оно окажется неправильным для части случаев. Ветвление позволяет учесть эти различия и задать подходящее действие для каждого результата.

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

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

Условие должно иметь однозначный результат — истину или ложь, иначе алгоритм не сможет определить, какую ветвь выполнять. Фраза «число большое» не задаёт точного правила: непонятно, с каким числом его сравнивать. А условие «число больше 10» проверяется однозначно для любого конкретного числа. Поэтому при составлении команды нужно уточнить, что именно проверяется и как определить результат.

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

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

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

Результат проверки условияКакая ветвь выполняетсяКакая ветвь пропускается
Условие истинноВетвь «ТО»Ветвь «ИНАЧЕ»
Условие ложноВетвь «ИНАЧЕ»Ветвь «ТО»

Разбор задач

Задача 1. Дано целое число. Составьте алгоритм, который сообщает, является ли число чётным.

  1. Проверим делимость числа на 2 без остатка. Это условие истинно для чётного числа и ложно для нечётного. Поэтому в ветвь «ТО» поместим сообщение «число чётное», а в ветвь «ИНАЧЕ» — «число нечётное».

  2. Запишем алгоритм: ЕСЛИ число делится на 2 без остатка, ТО сообщить «чётное», ИНАЧЕ сообщить «нечётное». При проверке условия выбирается только одна из этих команд. Других случаев для целого числа не остаётся.

  3. Проверим на примере: для числа 8 деление на 2 проходит без остатка, поэтому условие истинно. Алгоритм выполняет ветвь «ТО» и выводит сообщение о чётности. Для числа 7 условие ложно, и выполняется ветвь «ИНАЧЕ».

Ответ: проверять делимость на 2 без остатка и выводить соответствующее сообщение в выбранной ветви.

Задача 2. Даны два числа. Составьте алгоритм, который выводит большее из них, а при равенстве сообщает, что числа равны.

  1. Сначала сравним первое число со вторым. Если первое больше, можно сразу вывести его как большее. Если это условие ложно, первое число не больше второго, но пока мы не знаем, равны они или второе больше.

  2. Во второй проверке сравним второе число с первым. Если условие истинно, выводим второе число. Если оно тоже ложно, оба числа равны, потому что ни одно не больше другого.

  3. Запишем последовательность: ЕСЛИ первое число больше второго, ТО вывести первое. ИНАЧЕ ЕСЛИ второе больше первого, ТО вывести второе, ИНАЧЕ сообщить «числа равны».

Ответ: выполнить сравнение в обоих направлениях и сообщить о равенстве, если оба сравнения ложны.

Задача 3. Даны три числа — длины отрезков. Составьте алгоритм, который определяет, можно ли построить из них треугольник.

  1. Для треугольника сумма длин любых двух сторон должна быть больше длины третьей. Поэтому составим три проверки: a + b > c, a + c > b и b + c > a. Здесь a, b и c — длины данных отрезков.

  2. Все три проверки должны выполняться одновременно. Соединим их логической операцией «И»: условие истинно, только когда истинно каждое неравенство. Если хотя бы одно неравенство ложно, построить треугольник нельзя.

  3. Запишем алгоритм: ЕСЛИ (a + b > c) И (a + c > b) И (b + c > a), ТО сообщить «треугольник построить можно», ИНАЧЕ сообщить «нельзя». Затем подставим длины и проверим условие целиком. Результат проверки однозначно укажет нужное сообщение.

Ответ: проверить все три неравенства треугольника одновременно и выбрать сообщение по результату.

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

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

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

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

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

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

Перед изучением ветвления нужно уметь записывать последовательный алгоритм и понимать порядок выполнения его команд. Чтобы составлять условия, полезно сравнивать числа и использовать логические операции «И», «ИЛИ» и «НЕ». Ветвление пригодится дальше при написании программ, проверке данных и описании алгоритмов, в которых возможны разные исходы.

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

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

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

Что такое команда ветвления?

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

Как понять, какие команды выполнятся после «ТО»?

Сначала проверяют условие, записанное в команде. Если оно истинно, выполняются команды после «ТО», а ветвь «ИНАЧЕ» пропускается.

Когда выполняется ветвь «ИНАЧЕ»?

Ветвь «ИНАЧЕ» выполняется, если условие оказалось ложным. Это не новая проверка, а действия для второго исхода.

Можно ли использовать в условии несколько проверок?

Да, если нужно проверить несколько требований одновременно или предусмотреть разные случаи. Проверки можно соединить логическими операциями «И», «ИЛИ» и «НЕ», чтобы результат всего условия оставался однозначным.

Что произойдёт, если условие всегда истинно или всегда ложно?

Если условие всегда истинно, каждый запуск алгоритма будет выбирать ветвь «ТО». Если оно всегда ложно, будет выбираться ветвь «ИНАЧЕ»; вторая ветвь при этом не выполнится.

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

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

Учебник

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