Для чего используется инструкция break
Перейти к содержимому

Для чего используется инструкция break

  • автор:

Циклы for и while, операторы break и continue, волшебное слово else

Python 3 логотип

В этой статье я расскажу о циклах for и while, операторах break и continue, а также о слове else, которое, будучи употребленное с циклом, может сделать программный код несколько более понятным.

Цикл while

While — один из самых универсальных циклов в Python, поэтому довольно медленный. Выполняет тело цикла до тех пор, пока условие цикла истинно.

Цикл for уже чуточку сложнее, чуть менее универсальный, но выполняется гораздо быстрее цикла while. Этот цикл проходится по любому итерируемому объекту (например строке или списку), и во время каждого прохода выполняет тело цикла.

Оператор continue

Оператор continue начинает следующий проход цикла, минуя оставшееся тело цикла (for или while)

Оператор break

Оператор break досрочно прерывает цикл.

Слово else, примененное в цикле for или while, проверяет, был ли произведен выход из цикла инструкцией break, или же «естественным» образом. Блок инструкций внутри else выполнится только в том случае, если выход из цикла произошел без помощи break.

Для вставки кода на Python в комментарий заключайте его в теги

  • Модуль csv - чтение и запись CSV файлов
  • Создаём сайт на Django, используя хорошие практики. Часть 1: создаём проект
  • Онлайн-обучение Python: сравнение популярных программ
  • Книги о Python
  • GUI (графический интерфейс пользователя)
  • Курсы Python
  • Модули
  • Новости мира Python
  • NumPy
  • Обработка данных
  • Основы программирования
  • Примеры программ
  • Типы данных в Python
  • Видео
  • Python для Web
  • Работа для Python-программистов
  • Сделай свой вклад в развитие сайта!
  • Самоучитель Python
  • Карта сайта
  • Отзывы на книги по Python
  • Реклама на сайте

break оператор (C++)

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

Синтаксис

break; 

Замечания

Оператор break используется с условным switch оператором, а также с do операторами , for а также while с операторами цикла.

switch В инструкции инструкция приводит к тому, break что программа выполняет следующую инструкцию за пределами инструкции switch . break Без инструкции выполняется каждая инструкция из соответствующей case метки до конца switch инструкции, включая default предложение.

В циклах break оператор завершает выполнение ближайшего заключенного do for оператора или while оператора. Управление передается оператору, который расположен после завершенного оператора, при его наличии.

В вложенных инструкциях break оператор заканчивается только оператором , for switch или while оператором do , который немедленно заключает его. Вы можете использовать инструкцию return или goto инструкцию для передачи управления из более глубоко вложенных структур.

Пример

В следующем коде показано, как использовать инструкцию break в цикле for .

#include using namespace std; int main() < // An example of a standard for loop for (int i = 1; i < 10; i++) < if (i == 4) < break; >cout // An example of a range-based for loop int nums []; for (int i : nums) < if (i == 4) < break; >cout > 
1 2 3 1 2 3 

В следующем коде показано, как использовать break цикл while и do цикл.

#include using namespace std; int main() < int i = 0; while (i < 10) < if (i == 4) < break; >cout i = 0; do < if (i == 4) < break; >cout while (i
0 1 2 3 0 1 2 3 

В следующем коде показано, как использовать break в инструкции switch. В каждом случае необходимо использовать break , если вы хотите обрабатывать каждый случай отдельно. Если вы не используете break , выполнение кода переходит к следующему варианту.

#include using namespace std; enum Suit< Diamonds, Hearts, Clubs, Spades >; int main() < Suit hand; . . . // Assume that some enum value is set for hand // In this example, each case is handled separately switch (hand) < case Diamonds: cout // In this example, Diamonds and Hearts are handled one way, and // Clubs, Spades, and the default value are handled another way switch (hand) < case Diamonds: case Hearts: cout > 

Реклама

Скриптовый язык программирования Gentee - Бесплатный, кроссплатформенный язык программирования для автоматизации.

Gentee нужна ваша помощь!
Как разместить рекламу

Инструкции return, break, continue

return

Инструкция return предназначена для возврата значения функции или экстренного выхода из функции. Выход может быть из любого места тела функции, в том числе из циклов и вложенных блоков. Если функция возвращает значение, то инструкция return должна обязательно присутствовать, и должна содержать выражение соответствующего типа.

func uint myfunc < . fornum i, 100 < if error : return 0 . > return a + b >

break

Инструкция break используется для выхода из циклов. break может быть внутри вложенных блоков. Если есть несколько вложенных циклов, то произойдёт выход из текущего цикла.

while b > c < for i = 100, i > 0, i-- < if !myfunc( i ) < break //exit from for > > b++ >

continue

Инструкция continue действует внутри циклов и позволяет перейти к выражению изменения счетчика (для циклов for, fornum, foreach) или к выражению условию ( для циклов while и do-while) не выполняя до конца тело цикла. Инструкция действует на текущий цикл в случае вложенных циклов.

fornum i, 100 < if i > 10 && i < 20 < continue > a += i // The given expression is not evaluated if i>10 and i >

Смотрите также

  • Конструкции цикла while и do
  • Конструкции цикла for и fornum
  • Конструкция цикла foreach

break

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

Интерактивный пример

Синтаксис

break [label]; 

label Необязательный

Идентификатор связанной метки. Если прерываемое выражение не цикл или switch , указание метки обязательно.

Описание

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

Использование break , с меткой или без, невозможно внутри функции, которая вложена в прерываемые цикл, конструкцию switch или блочное выражение с меткой.

Примеры

break в цикле while

Следующая функция использует оператор break для выхода из цикла while , когда i станет равно 3, и возвращает значение 3 * x .

function testBreak(x)  var i = 0; while (i  6)  if (i == 3)  break; > i += 1; > return i * x; > 

break в конструкции switch

В примере оператор break прервёт выполнение switch сразу после выполнения кода в совпавшем case .

const food = "sushi"; switch (food)  case "sushi": console.log("Sushi is originally from Japan."); break; case "pizza": console.log("Pizza is originally from Italy."); break; default: console.log("I have never heard of that dish."); break; > 

break в блочном выражении с указанной меткой

В примере используется оператор break с меткой. В таком случае break обязательно должен быть вложен в блок кода с той же меткой. Обратите внимание, что inner_block вложен в outer_block .

outer_block:  inner_block:  console.log("1"); break outer_block; // break прервёт выполнение кода как в inner_block, так и в outer_block console.log(":-("); // не будет выполнено > console.log("2"); // не будет выполнено > 

break вне блочного выражения с указанной меткой

В примере также используется break с меткой, но код будет выполнен с ошибкой SyntaxError , потому что break находится в блоке с меткой block_1 , а прерывается выполнение блока кода с меткой block_2 . Ещё раз, в таком случае break обязательно должен быть вложен в блок кода с меткой, выполнение которого требуется прервать.

block_1:  console.log('1'); break block_2; // SyntaxError: label not found > block_2:  console.log('2'); > 

break внутри функций

Код в примерах также будет выполнен с ошибкой SyntaxError , потому что в обоих случаях break находится в теле функции, вложенной в прерываемый цикл или прерываемое блочное выражение с меткой.

function testBreak(x)  var i = 0; while (i  6)  if (i == 3)  (function()  break; >)(); > i += 1; > return i * x; > testBreak(1); // SyntaxError: Illegal break statement 
block_1:  console.log('1'); ( function()  break block_1; // SyntaxError: Undefined label 'block_1' >)(); > 

Спецификации

Specification
ECMAScript Language Specification
# sec-break-statement

Совместимость с браузерами

BCD tables only load in the browser

Смотрите также

Found a content problem with this page?

  • Edit the page on GitHub.
  • Report the content issue.
  • View the source on GitHub.

This page was last modified on 7 авг. 2023 г. by MDN contributors.

Your blueprint for a better internet.

MDN

Support

  • Product help
  • Report an issue

Our communities

Developers

  • Web Technologies
  • Learn Web Development
  • MDN Plus
  • Hacks Blog
  • Website Privacy Notice
  • Cookies
  • Legal
  • Community Participation Guidelines

Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998– 2024 by individual mozilla.org contributors. Content available under a Creative Commons license.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *