Цикл – специальная управляющая конструкция, используемая в высокоуровневых языках разработки. С ее помощью удастся задать многократное исполнение некоторого набора инструкций. Циклы поддерживаются почти в каждом ЯП, включая C#.
Есть бесконечные циклы – когда итерации цикла (проходы через заданные наборы инструкций или алгоритмы) повторяются бесконечно. Обычно такое происходит, если в программном коде обнаруживаются логические ошибки.
Далее предстоит разобраться с циклами for и иными «петлями» в C Sharp. Эта информация пригодится преимущественно новичкам.
Принцип работы и виды
Циклы в языке Си Шарп работают точно также, как и во всех остальных языках. Многое зависит от типа «петли», но общие концепции обработки данных всегда одинаковые:
- Сначала программа считывает цикл и производит необходимые расчеты.
- Далее система проверяет истинность условия, заданного для выбора дальнейшего алгоритма действий.
- Если на выходе получилась логическая истина, тело цикла (заданная команда) будет обработано должным образом.
- После этого программа снова производит расчеты и проверяет истинность условия. Выполнение цикла производится до тех пор, пока не достигнут должны результат или система не получит команду на остановку.
В бесконечной «петле» предстоит пользоваться оператором принудительного прекращения работы инструкции – break
Циклы C Sharp бывают нескольких типов:
- for – со счетчиком;
- while – с постусловием;
- do…while – с предусловием;
- foreach.
Далее каждый вариант будет рассмотрен более подробно. Аналоги представленных «петлей» есть пойти во всех языках программирования. Работают они одинаково, поэтому тем, кто уже занимался разработкой и имел дело изучаемым компонентом, будет проще вникнуть в происходящее.
Со счетчиком
Цикл for C Sharp – самый распространенный. Он является «элементарным» и имеет широкую область применения. For называется «цикл в C Sharp со счетчиком».
В нем реализован механизм итерации, в котором заданное условие проверяется непосредственно перед выполнением каждого «прохода». Оператор цикла for имеет следующий синтаксис:
Здесь:
- Инициализация – выражение (команда), которая инициализирует счетчик. Это переменная, которая определяет количество итераций, необходимых для выполнения в процессе обработки кода.
- Условие – логическое выражение. Определяет дальнейший алгоритм действий. Если условие – это true, итерация в цикле for будет выполнена. При результате false «петля» прекращает «работать». Управление программой переходит к следующему оператору.
- Выражение – функция или команда, изменяющая значение переменной, выступающей в for в виде счетчика. «Шаг» увеличения соответствующего параметра. Не является обязательным компонентом. Переменная-счетчик способна меня значение непосредственно в теле цикла.
В Си Шарп и Си Плюс Плюс, а также в других языках разработки допускается использование цикла for для одного оператора. В этом случае фигурные скобки, представленные в прошлой записи, опускаются. Синтаксис упрощенной формы такой:
Здесь «оператор» – это одна инструкция или функция, необходимая для выполнения при истинности заданного условия.
В цикле for:
- количество итераций заранее определено;
- возможно определение количества «проходов» на основе выполнения заданного условия.
Чтобы лучше понимать принцип работы рассмотренного типа «петли», нужно не только разобрать описание этого компонента, но и посмотреть наглядные примеры.
Простейший пример
Описание цикла for и его синтаксис в полной и сокращенной формах понятно. Вот – пример, помогающий объяснить принцип работа оператора:
Тут:
- В первой строке предстоит установить саму «петлю» и ее «параметры». Это – описание рассматриваемого компонента.
- For int i в записи – это счетчик. Первая строка указывает, что будет создана и инициализированная переменная i типа int (целочисленная).
- Условие i < 4 указывает на то, что функции, написанные в строке цикла For, будут выполняться, пока переменная int i будет меньше 4.
- Третья часть, написанная в строке – это действия, выполняемые после итерации. Сюда относится увеличение переменной на 1 (step +1 или i++).
Сначала программа определит int i = 1 и проверит имеющееся в цикле for условие. Его задает предложенная структура кода. Далее на экран будет выведено значение переменной i. Это связано с тем, что i = 1 меньше 4.
После того как запись выведется на экран, произойдет увеличение счетчика на «шаг» (i++). Значение его переменной будет равно 2. Программа снова проверит i < 4 и выполнит заданное в структуре условие. В конце значение счетчика станет 3. Итерация совершится вновь. Как только i = 4, оператор цикла for перестанет работать.
Пример два – вычисление суммы
Использование рассматриваемого оператора помогает выполнять различные действия. Пример – рассчитать сумму чисел:
Здесь расчет производится в промежутке от 2 (включительно) до 100. По умолчанию «шаг» цикла for в Си Плюс Плюс, C Sharp и других языках является единицей. Чтобы установить «уменьшение» счетчика, нужно указать i—, заменив i++.
С предусловием
Цикл For C Sharp используется для простых и сложных задач, но есть и другие операторы «петлей». Они помогают реализовывать более крупные проекты.
Второй вариант «петли» – с постусловием. Для применения такого элемента нужно поставить ключевое слово while в коде. Структура «петли» в этом случае окажется такой:
While будет сразу проверять истинность некоторого условия. Если результат вычислений – это логическая истина, блок «действия цикла», будет отправлен на выполнение.
Выше – наглядный пример, демонстрирующий использование «петлей» с предусловием. Здесь «шаг» равен -1.
Постусловие
За что отвечает запись «for int» в C Sharp, понятно. Данный язык разработки поддерживает циклы с постусловием. Чтобы «установить» такой компонент, нужно воспользоваться конструкцией do … while.
Синтаксическая форма записи:
Здесь сначала выполняется код цикла, а затем происходит проверка инструкции while. Эта конструкция используется, если нужно, чтобы «петля» выполнилась в программе хотя бы один раз.
Foreach
При установке цикла foreach предстоит перебирать наборы или коллекции (string, dict и так далее). Синтаксическая форма:
После оператора в скобках задается определение переменной и ключевое слово in. Далее – коллекция, в которой осуществляется перебор компонентов.
В процессе реализации данная «петля» последовательно перебирает элементы коллекции и перемещает их в переменную. Вот наглядный пример использования конструкции:
Фрагмент поможет вывести посимвольно буквы, формирующие заданную строку (Tom).
Здесь и тут можно увидеть больше примеров, где присутствует цикл for в C Sharp. Быстрее освоить их помогут специализированные компьютерные курсы.