0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<ul><li><a>Цикл - это…</a><ul><li><a>Цикл While</a></li>
1
<ul><li><a>Цикл - это…</a><ul><li><a>Цикл While</a></li>
2
<li><a>Оператор Repeat</a></li>
2
<li><a>Оператор Repeat</a></li>
3
</ul></li>
3
</ul></li>
4
<li><a>Цикл For</a><ul><li><a>В Pascal</a></li>
4
<li><a>Цикл For</a><ul><li><a>В Pascal</a></li>
5
<li><a>В C++</a></li>
5
<li><a>В C++</a></li>
6
<li><a>В C#</a></li>
6
<li><a>В C#</a></li>
7
</ul></li>
7
</ul></li>
8
</ul><p>Существуют разные языки программирования, но все они состоят из примерно одинаковых компонентов. Огромную роль при составлении программы играют циклы.</p>
8
</ul><p>Существуют разные языки программирования, но все они состоят из примерно одинаковых компонентов. Огромную роль при составлении программы играют циклы.</p>
9
<p>В данной статье будет рассказано о том, как использовать циклы на практике. Будут приведены примеры приложений с наиболее популярным, удобным и полезным счетчиком - for. Соответствующие данные пригодятся и новичкам, и опытным разработчикам.</p>
9
<p>В данной статье будет рассказано о том, как использовать циклы на практике. Будут приведены примеры приложений с наиболее популярным, удобным и полезным счетчиком - for. Соответствующие данные пригодятся и новичкам, и опытным разработчикам.</p>
10
<h2>Цикл - это…</h2>
10
<h2>Цикл - это…</h2>
11
<p>Цикл - программный код, который позволяет повторять те или иные части приложения многократно. Предусматривает:</p>
11
<p>Цикл - программный код, который позволяет повторять те или иные части приложения многократно. Предусматривает:</p>
12
<ul><li>тело;</li>
12
<ul><li>тело;</li>
13
<li>заголовок.</li>
13
<li>заголовок.</li>
14
</ul><p>Заголовок отвечает за определение того, до каких пор или сколько раз выполняется тело цикла. Это - своеобразное условие. Тело включает в свой состав выражения, выполняемые при возврате заголовка значения "истина".</p>
14
</ul><p>Заголовок отвечает за определение того, до каких пор или сколько раз выполняется тело цикла. Это - своеобразное условие. Тело включает в свой состав выражения, выполняемые при возврате заголовка значения "истина".</p>
15
<p>Как только последняя инструкция тела достигнута, поток повторения делает возврат к заголовку. Условие будет проверяться снова и снова. В зависимости от полученного результата программы ведут себя тем или иным образом:</p>
15
<p>Как только последняя инструкция тела достигнута, поток повторения делает возврат к заголовку. Условие будет проверяться снова и снова. В зависимости от полученного результата программы ведут себя тем или иным образом:</p>
16
<ul><li>повторяют то, что написано в теле;</li>
16
<ul><li>повторяют то, что написано в теле;</li>
17
<li>переходят к обработке выражения, написанного после всего соответствующего счетчика.</li>
17
<li>переходят к обработке выражения, написанного после всего соответствующего счетчика.</li>
18
</ul><p>Большинство ЯП предусматривают три цикла для создания разнообразных приложений:</p>
18
</ul><p>Большинство ЯП предусматривают три цикла для создания разнообразных приложений:</p>
19
<ul><li>со счетчиком - for;</li>
19
<ul><li>со счетчиком - for;</li>
20
<li>repeat (или do while) - с постусловием;</li>
20
<li>repeat (или do while) - с постусловием;</li>
21
<li>while - с предусловием.</li>
21
<li>while - с предусловием.</li>
22
</ul><p>Выше - пример того, как работают соответствующие блоки кода в Pascal. Упор будет сделан на for.</p>
22
</ul><p>Выше - пример того, как работают соответствующие блоки кода в Pascal. Упор будет сделан на for.</p>
23
<h3>Цикл While</h3>
23
<h3>Цикл While</h3>
24
<p>С двумя остальными циклами (петлями) стоит разобрать на примере Pascal. Это - самый простой способ полноценно освоить соответствующее направление.</p>
24
<p>С двумя остальными циклами (петлями) стоит разобрать на примере Pascal. Это - самый простой способ полноценно освоить соответствующее направление.</p>
25
<p>Первый тип петли - с предусловием. Для него используется оператор while. Здесь:</p>
25
<p>Первый тип петли - с предусловием. Для него используется оператор while. Здесь:</p>
26
<ul><li>в заголовке прописывается логическое выражение;</li>
26
<ul><li>в заголовке прописывается логическое выражение;</li>
27
<li>если результат является "истиной", тело выполняется;</li>
27
<li>если результат является "истиной", тело выполняется;</li>
28
<li>когда "на выходе" получается false, приложение пропускает петлю и переходит к следующей операции.</li>
28
<li>когда "на выходе" получается false, приложение пропускает петлю и переходит к следующей операции.</li>
29
</ul><p>Когда тело выполнено, программа возвращается к заголовку и проверяет условие выполнения цикла. Выполняется тело столько раз, сколько раз логическое выражение получит значение true. Именно поэтому для корректной работы программного обеспечения необходимо предусмотреть изменение переменной, используемой в заголовке. Программисту требуется обеспечить условие выполнения для логической лжи. В противном случае возникнет зацикливание (или бесконечная петля).</p>
29
</ul><p>Когда тело выполнено, программа возвращается к заголовку и проверяет условие выполнения цикла. Выполняется тело столько раз, сколько раз логическое выражение получит значение true. Именно поэтому для корректной работы программного обеспечения необходимо предусмотреть изменение переменной, используемой в заголовке. Программисту требуется обеспечить условие выполнения для логической лжи. В противном случае возникнет зацикливание (или бесконечная петля).</p>
30
<h3>Оператор Repeat</h3>
30
<h3>Оператор Repeat</h3>
31
<p>Предыдущий вариант может ни разу не выполниться приложением. Такое встречается, если соответствующее логическое выражение возвращает с первого раза "ложь". Но подобный вариант развития событий не всегда приемлем на практике.</p>
31
<p>Предыдущий вариант может ни разу не выполниться приложением. Такое встречается, если соответствующее логическое выражение возвращает с первого раза "ложь". Но подобный вариант развития событий не всегда приемлем на практике.</p>
32
<p>Иногда возникает ситуация, при которой тело должно выполниться хотя бы один раз, независимо от возвращенной переменной. Для этого нужно использовать цикл с постусловием - repeat.</p>
32
<p>Иногда возникает ситуация, при которой тело должно выполниться хотя бы один раз, независимо от возвращенной переменной. Для этого нужно использовать цикл с постусловием - repeat.</p>
33
<p>Здесь:</p>
33
<p>Здесь:</p>
34
<ul><li>логическое выражение пишется после тела;</li>
34
<ul><li>логическое выражение пишется после тела;</li>
35
<li>если результат - true, то программа выходит из петли;</li>
35
<li>если результат - true, то программа выходит из петли;</li>
36
<li>при возврате false происходит обработка написанной в соответствующем блоке кода информации.</li>
36
<li>при возврате false происходит обработка написанной в соответствующем блоке кода информации.</li>
37
</ul><p>Выше - пример того, как будет выглядеть соответствующая петля на практике в Pascal. Это - элементарное приложение, которое посчитает сумму чисел.</p>
37
</ul><p>Выше - пример того, как будет выглядеть соответствующая петля на практике в Pascal. Это - элементарное приложение, которое посчитает сумму чисел.</p>
38
<p>For - это петля со счетчиком. Является достаточно распространенным на практике. Встречается в самых разных языках программирования. Далее будут приведены примеры из Pascal, C++ и C#. Каждый ЯП рассмотрен отдельно.</p>
38
<p>For - это петля со счетчиком. Является достаточно распространенным на практике. Встречается в самых разных языках программирования. Далее будут приведены примеры из Pascal, C++ и C#. Каждый ЯП рассмотрен отдельно.</p>
39
<p>Главное запомнить, что for - это петля, которая будет выполняться определенное количество раз. Соответствующий код будет последовательно выполнять одни и те же манипуляции столько, сколько это потребуется.</p>
39
<p>Главное запомнить, что for - это петля, которая будет выполняться определенное количество раз. Соответствующий код будет последовательно выполнять одни и те же манипуляции столько, сколько это потребуется.</p>
40
<h3>В Pascal</h3>
40
<h3>В Pascal</h3>
41
<p>For в Pascal использовать не слишком трудно. Это - петля со счетчиком. Итерации цикла будут определяться разницей между первым и вторым значением + единица. Тело здесь не должно включать в себя выражения, которые могут внести в счетчик корректировки.</p>
41
<p>For в Pascal использовать не слишком трудно. Это - петля со счетчиком. Итерации цикла будут определяться разницей между первым и вторым значением + единица. Тело здесь не должно включать в себя выражения, которые могут внести в счетчик корректировки.</p>
42
<p>Pascal предусматривает две формы представления:</p>
42
<p>Pascal предусматривает две формы представления:</p>
43
<ul><li>For счетчик := начало to конец do тело;</li>
43
<ul><li>For счетчик := начало to конец do тело;</li>
44
<li>For счетчик := начало downto конец do тело.</li>
44
<li>For счетчик := начало downto конец do тело.</li>
45
</ul><p>Если поставить to между концом и началом в for i, каждый шаг петли увеличивается на +1, а downto уменьшает его на -1.</p>
45
</ul><p>Если поставить to между концом и началом в for i, каждый шаг петли увеличивается на +1, а downto уменьшает его на -1.</p>
46
<p>Счетчик - переменная любого перечисляемого типа. Начальные и конечные значения здесь представляются не только конкретным значением, но и выражением, которое возвращает совместимые с типом счетчика виды информации.</p>
46
<p>Счетчик - переменная любого перечисляемого типа. Начальные и конечные значения здесь представляются не только конкретным значением, но и выражением, которое возвращает совместимые с типом счетчика виды информации.</p>
47
<p>В for итерации цикла (их количество) известно до того, как программа будет выполнена. Можно сделать так, чтобы этот момент регулировал пользователь.</p>
47
<p>В for итерации цикла (их количество) известно до того, как программа будет выполнена. Можно сделать так, чтобы этот момент регулировал пользователь.</p>
48
<p>Выше - пример именно такого варианта. Значение будет присваиваться той или иной переменной, после чего оно применяется в заголовке.</p>
48
<p>Выше - пример именно такого варианта. Значение будет присваиваться той или иной переменной, после чего оно применяется в заголовке.</p>
49
<h3>В C++</h3>
49
<h3>В C++</h3>
50
<p>C++ - язык программирования, который должен освоить каждый разработчик. Особенно это касается тех, кто серьезно планирует заниматься созданием контента. Здесь тоже есть for.</p>
50
<p>C++ - язык программирования, который должен освоить каждый разработчик. Особенно это касается тех, кто серьезно планирует заниматься созданием контента. Здесь тоже есть for.</p>
51
<p>Он позволяет повторять одни и те же операции несколько раз. Сколько - известно до окончательного запуска приложения. Ниже - синтаксис "петли".</p>
51
<p>Он позволяет повторять одни и те же операции несколько раз. Сколько - известно до окончательного запуска приложения. Ниже - синтаксис "петли".</p>
52
<p>Здесь необходимо запомнить следующее:</p>
52
<p>Здесь необходимо запомнить следующее:</p>
53
<ol><li><объявление счетчика> - создается переменная (счетчик цикла for), после чего задается ее первоначальное значение. Соответствующая команда будет выполняться до того, как рассматриваемый блок кода запустится. Это - первоначальное значение счетчика.</li>
53
<ol><li><объявление счетчика> - создается переменная (счетчик цикла for), после чего задается ее первоначальное значение. Соответствующая команда будет выполняться до того, как рассматриваемый блок кода запустится. Это - первоначальное значение счетчика.</li>
54
<li><условие выполнения> - напоминает условие оператора if. Здесь прописывается логическое выражение, которое будет обрабатываться приложением. В зависимости от результата меняется алгоритм действий. Если "на выходе" получается логическая "истина" - петля выполняет прописанный внутри блока код.</li>
54
<li><условие выполнения> - напоминает условие оператора if. Здесь прописывается логическое выражение, которое будет обрабатываться приложением. В зависимости от результата меняется алгоритм действий. Если "на выходе" получается логическая "истина" - петля выполняет прописанный внутри блока код.</li>
55
<li><шаг цикла> - инструкция, выполняемая в конце итерации. Переводит счетчик for на новое значение.</li>
55
<li><шаг цикла> - инструкция, выполняемая в конце итерации. Переводит счетчик for на новое значение.</li>
56
<li><тело> - код, необходимый для выполнения при "истинности" на той или иной итерации. То, что будет выполняться в ходе обработки запроса.</li>
56
<li><тело> - код, необходимый для выполнения при "истинности" на той или иной итерации. То, что будет выполняться в ходе обработки запроса.</li>
57
</ol><p>А вот - пример программы, которая найдет произведение цифр от 1 до n (факториал).</p>
57
</ol><p>А вот - пример программы, которая найдет произведение цифр от 1 до n (факториал).</p>
58
<p>Выше - результат обработки кода.</p>
58
<p>Выше - результат обработки кода.</p>
59
<h3>В C#</h3>
59
<h3>В C#</h3>
60
<p>C# тоже стал использоваться достаточно часто, поэтому на него стоит обратить внимание. У него есть цикл for. Он напоминает по синтаксису C++:</p>
60
<p>C# тоже стал использоваться достаточно часто, поэтому на него стоит обратить внимание. У него есть цикл for. Он напоминает по синтаксису C++:</p>
61
<p>Тоже необходим для многократного повторения тех или иных операций. Работает так:</p>
61
<p>Тоже необходим для многократного повторения тех или иных операций. Работает так:</p>
62
<ol><li>В for объявляются три переменные: счетчик, итератор и условие.</li>
62
<ol><li>В for объявляются три переменные: счетчик, итератор и условие.</li>
63
<li>Объявление счетчика осуществляется всего один раз. Делается это в самом начале. Он инициализируется после того, как будет объявлен.</li>
63
<li>Объявление счетчика осуществляется всего один раз. Делается это в самом начале. Он инициализируется после того, как будет объявлен.</li>
64
<li>Происходит проверка условия (это - булево выражение). Результат - true или false.</li>
64
<li>Происходит проверка условия (это - булево выражение). Результат - true или false.</li>
65
<li>Если итог - "истина", выполняется тело. Далее - инициализируется итератор (изменяется значение соответствующей переменной), а условие проходит повторную проверку. Процедура не заканчивается, пока не произойдет возврат false.</li>
65
<li>Если итог - "истина", выполняется тело. Далее - инициализируется итератор (изменяется значение соответствующей переменной), а условие проходит повторную проверку. Процедура не заканчивается, пока не произойдет возврат false.</li>
66
</ol><p>Если же при выполнении цикла возвращается логическая "ложь", петля будет завершена.</p>
66
</ol><p>Если же при выполнении цикла возвращается логическая "ложь", петля будет завершена.</p>
67
<p>Выше - пример кода в C#, демонстрирующий вычисление суммы первых n натуральных чисел.</p>
67
<p>Выше - пример кода в C#, демонстрирующий вычисление суммы первых n натуральных чисел.</p>
68
<p><em>Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в <a>Otus</a>!</em></p>
68
<p><em>Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в <a>Otus</a>!</em></p>
69
69