Существуют разные языки программирования, но все они состоят из примерно одинаковых компонентов. Огромную роль при составлении программы играют циклы.
В данной статье будет рассказано о том, как использовать циклы на практике. Будут приведены примеры приложений с наиболее популярным, удобным и полезным счетчиком – for. Соответствующие данные пригодятся и новичкам, и опытным разработчикам.
Цикл – это…
Цикл – программный код, который позволяет повторять те или иные части приложения многократно. Предусматривает:
- тело;
- заголовок.
Заголовок отвечает за определение того, до каких пор или сколько раз выполняется тело цикла. Это – своеобразное условие. Тело включает в свой состав выражения, выполняемые при возврате заголовка значения «истина».
Как только последняя инструкция тела достигнута, поток повторения делает возврат к заголовку. Условие будет проверяться снова и снова. В зависимости от полученного результата программы ведут себя тем или иным образом:
- повторяют то, что написано в теле;
- переходят к обработке выражения, написанного после всего соответствующего счетчика.
Большинство ЯП предусматривают три цикла для создания разнообразных приложений:
- со счетчиком – for;
- repeat (или do while) – с постусловием;
- while – с предусловием.
Выше – пример того, как работают соответствующие блоки кода в Pascal. Упор будет сделан на for.
Цикл While
С двумя остальными циклами (петлями) стоит разобрать на примере Pascal. Это – самый простой способ полноценно освоить соответствующее направление.
Первый тип петли – с предусловием. Для него используется оператор while. Здесь:
- в заголовке прописывается логическое выражение;
- если результат является «истиной», тело выполняется;
- когда «на выходе» получается false, приложение пропускает петлю и переходит к следующей операции.
Когда тело выполнено, программа возвращается к заголовку и проверяет условие выполнения цикла. Выполняется тело столько раз, сколько раз логическое выражение получит значение true. Именно поэтому для корректной работы программного обеспечения необходимо предусмотреть изменение переменной, используемой в заголовке. Программисту требуется обеспечить условие выполнения для логической лжи. В противном случае возникнет зацикливание (или бесконечная петля).
Оператор Repeat
Предыдущий вариант может ни разу не выполниться приложением. Такое встречается, если соответствующее логическое выражение возвращает с первого раза «ложь». Но подобный вариант развития событий не всегда приемлем на практике.
Иногда возникает ситуация, при которой тело должно выполниться хотя бы один раз, независимо от возвращенной переменной. Для этого нужно использовать цикл с постусловием – repeat.
Здесь:
- логическое выражение пишется после тела;
- если результат – true, то программа выходит из петли;
- при возврате false происходит обработка написанной в соответствующем блоке кода информации.
Выше – пример того, как будет выглядеть соответствующая петля на практике в Pascal. Это – элементарное приложение, которое посчитает сумму чисел.
Цикл For
For – это петля со счетчиком. Является достаточно распространенным на практике. Встречается в самых разных языках программирования. Далее будут приведены примеры из Pascal, C++ и C#. Каждый ЯП рассмотрен отдельно.
Главное запомнить, что for – это петля, которая будет выполняться определенное количество раз. Соответствующий код будет последовательно выполнять одни и те же манипуляции столько, сколько это потребуется.
В Pascal
For в Pascal использовать не слишком трудно. Это – петля со счетчиком. Итерации цикла будут определяться разницей между первым и вторым значением + единица. Тело здесь не должно включать в себя выражения, которые могут внести в счетчик корректировки.
Pascal предусматривает две формы представления:
- For счетчик := начало to конец do тело;
- For счетчик := начало downto конец do тело.
Если поставить to между концом и началом в for i, каждый шаг петли увеличивается на +1, а downto уменьшает его на -1.
Счетчик – переменная любого перечисляемого типа. Начальные и конечные значения здесь представляются не только конкретным значением, но и выражением, которое возвращает совместимые с типом счетчика виды информации.
В for итерации цикла (их количество) известно до того, как программа будет выполнена. Можно сделать так, чтобы этот момент регулировал пользователь.
Выше – пример именно такого варианта. Значение будет присваиваться той или иной переменной, после чего оно применяется в заголовке.
В C++
C++ — язык программирования, который должен освоить каждый разработчик. Особенно это касается тех, кто серьезно планирует заниматься созданием контента. Здесь тоже есть for.
Он позволяет повторять одни и те же операции несколько раз. Сколько – известно до окончательного запуска приложения. Ниже – синтаксис «петли».
Здесь необходимо запомнить следующее:
- <объявление счетчика> — создается переменная (счетчик цикла for), после чего задается ее первоначальное значение. Соответствующая команда будет выполняться до того, как рассматриваемый блок кода запустится. Это – первоначальное значение счетчика.
- <условие выполнения> — напоминает условие оператора if. Здесь прописывается логическое выражение, которое будет обрабатываться приложением. В зависимости от результата меняется алгоритм действий. Если «на выходе» получается логическая «истина» — петля выполняет прописанный внутри блока код.
- <шаг цикла> — инструкция, выполняемая в конце итерации. Переводит счетчик for на новое значение.
- <тело> — код, необходимый для выполнения при «истинности» на той или иной итерации. То, что будет выполняться в ходе обработки запроса.
А вот – пример программы, которая найдет произведение цифр от 1 до n (факториал).
Выше – результат обработки кода.
В C#
C# тоже стал использоваться достаточно часто, поэтому на него стоит обратить внимание. У него есть цикл for. Он напоминает по синтаксису C++:
Тоже необходим для многократного повторения тех или иных операций. Работает так:
- В for объявляются три переменные: счетчик, итератор и условие.
- Объявление счетчика осуществляется всего один раз. Делается это в самом начале. Он инициализируется после того, как будет объявлен.
- Происходит проверка условия (это – булево выражение). Результат – true или false.
- Если итог – «истина», выполняется тело. Далее – инициализируется итератор (изменяется значение соответствующей переменной), а условие проходит повторную проверку. Процедура не заканчивается, пока не произойдет возврат false.
Если же при выполнении цикла возвращается логическая «ложь», петля будет завершена.
Выше – пример кода в C#, демонстрирующий вычисление суммы первых n натуральных чисел.
Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в Otus!