Menu
CoddyTech

Break и Continue

Часть раздела Логика и управление потоком путешествия по C# на Coddy. Урок 21 из 66.

В C# break и continue — это инструкции, которые дают тебе больший контроль над выполнением цикла.

Оператор break

Оператор break немедленно прерывает цикл:

for (int i = 1; i <= 10; i++)
{
    if (i == 5)
    {
        break; // Выйти из цикла, когда i станет равным 5
    }
    Console.WriteLine(i);
}

После выполнения приведённого выше кода вывод будет таким:

1
2
3
4

Цикл останавливается, как только i становится равным 5, и выполнение продолжается с кода после цикла.

Инструкция continue

Инструкция continue пропускает остаток текущей итерации и переходит к следующей итерации:

for (int i = 1; i <= 5; i++)
{
    if (i == 3)
    {
        continue; // Пропустить оставшуюся часть этой итерации
    }
    Console.WriteLine(i);
}

После выполнения приведённого выше кода результат будет таким:

1
2
4
5

Значение 3 не выводится, потому что оператор continue пропускает Console.WriteLine(i) для этой итерации.

challenge icon

Задание

Легко

Напиши метод с именем ProcessNumbers, который принимает массив целых чисел в качестве параметра. Метод должен:

  1. Выводить все числа в массиве
  2. Пропускать вывод любых отрицательных чисел (используй continue)
  3. Прекращать обработку, если встречается число больше 100 (используй break)
  4. Возвращать сумму всех выведенных чисел

Попробуйте сами

using System;

public class Program
{
    public static int ProcessNumbers(int[] numbers)
    {
        // Напишите здесь свой код
        return 0;
    }
    
    public static void Main(string[] args)
    {
        // Считайте ввод пользователя
        string input = Console.ReadLine();
        int[] numbers;
        
        if (string.IsNullOrEmpty(input))
        {
            // Пример массива для тестирования
            numbers = new int[] { 5, -3, 10, 15, -7, 105, 20 };
        }
        else
        {
            string[] parts = input.Split(',');
            numbers = new int[parts.Length];
            for (int i = 0; i < parts.Length; i++)
            {
                numbers[i] = int.Parse(parts[i].Trim());
            }
        }
        
        int sum = ProcessNumbers(numbers);
        Console.WriteLine("Sum: " + sum);
    }
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Логика и управление потоком

Потренируйтесь самостоятельно: Онлайн-компилятор C#