Другие языки программирования и технологии
По-человечески объясните цикл "for"
Например, цикл while будет выполняться пока условия не будут true или не будет подана команда break. Как обстоят дела с циклом for?
цикл for выполняется по счетчику с начального значения по конечное, его также можно остановить через break
если для С то for(i=<начальное значение; предел выхода; на сколько увеличивать>) {выражения; }
пример:
for(i=1;i<5;i++) {выражения; } цикл выполнится 4 раза каждый раз изменяя счетчик на 1
если для С то for(i=<начальное значение; предел выхода; на сколько увеличивать>) {выражения; }
пример:
for(i=1;i<5;i++) {выражения; } цикл выполнится 4 раза каждый раз изменяя счетчик на 1
for(переменная цикла и ее начальное значение; условие; изменение переменной цикла за проход) {тело цикла}
Порядок действий такой:
1. Проверяется условие цикла, если оно не выполняется - выполняется следующая после тела команда.
2. Выполняется тело.
3. Выполняется то, что Юля назвала итерацией .
4. Переходим опять к 1.
for (int j=1; j<=10; j++) {printf('%d',j);}
Порядок действий такой:
1. Проверяется условие цикла, если оно не выполняется - выполняется следующая после тела команда.
2. Выполняется тело.
3. Выполняется то, что Юля назвала итерацией .
4. Переходим опять к 1.
for (int j=1; j<=10; j++) {printf('%d',j);}
Очень просто
for(a;b;c)оператор;
Сначала выполняется выражение а, после этого о нем можно забыть, с таким уже успехом оно могло стоять перед циклом.
Затем выполняется выражение b. Оно обычно логическое, но в любом случае, если результат равен равен нулю, происходит выход из цикла, если нет - выполняется оператор цикла. После этого идет переход к выражению c, оно чаще всего используется для изменения какой-нибудь переменной, а после него выполняется переход к выражению b - и лыко-мочало, начинай с начала этого абзаца.
Так что никто не мешает написать даже цикл fоr(;;)оператор;
Или использовать в качестве a, b или c по нескольку выражений, разделив их запятой. Си - язык трюков.
По сути, for - сокращение для часто встречавшейся последовательности a; while(b){оператор; c;}
for(a;b;c)оператор;
Сначала выполняется выражение а, после этого о нем можно забыть, с таким уже успехом оно могло стоять перед циклом.
Затем выполняется выражение b. Оно обычно логическое, но в любом случае, если результат равен равен нулю, происходит выход из цикла, если нет - выполняется оператор цикла. После этого идет переход к выражению c, оно чаще всего используется для изменения какой-нибудь переменной, а после него выполняется переход к выражению b - и лыко-мочало, начинай с начала этого абзаца.
Так что никто не мешает написать даже цикл fоr(;;)оператор;
Или использовать в качестве a, b или c по нескольку выражений, разделив их запятой. Си - язык трюков.
По сути, for - сокращение для часто встречавшейся последовательности a; while(b){оператор; c;}
c for все тоже самое:
for(int i;i<=10;i++)
{
тело цикла
}
for ([переменная]; [условие]; [итерация])
for(int i;i<=10;i++)
{
тело цикла
}
for ([переменная]; [условие]; [итерация])
Например:
sum:=0
for i=1 to 10 do
sum=sum+1
end;
Это значит что цикл будет повторяться 10 раз. В цикле указаны команды которые должны выполняться на каждом шаге. Т. е на первом шаге 0+1=1, на втором 1+1=2, на третьем 2+1=3 и так 10 раз.. . Итог будет 10.
sum:=0
for i=1 to 10 do
sum=sum+1
end;
Это значит что цикл будет повторяться 10 раз. В цикле указаны команды которые должны выполняться на каждом шаге. Т. е на первом шаге 0+1=1, на втором 1+1=2, на третьем 2+1=3 и так 10 раз.. . Итог будет 10.
Выглядит сие так:
for(начальное условие; условие выполнения; изменения переменных за один проход цикла) .
Как-то:
for (i = 0; i < 10; i++) {...}
for (i = 1000; i >1; i /=10) {...}
Любой из блоков может отсутствовать, при том пустые операторы ";" сохраняются. Ну как-то так:
int i=15;
for (; i < 45; i+=5) {...}
for (i = 2; ; i*=i) {if (i==64) break; ...}
for (i=73; l > 15; ) {... i -= 2}
for (;;) {...} // while (true) {...}
Кроме того, на месте любого блока может быть несколько операторов. Разделяют их запятыми. Пример:
for (i =12, c = 15; i > 2; i++, c--) {...}
for(начальное условие; условие выполнения; изменения переменных за один проход цикла) .
Как-то:
for (i = 0; i < 10; i++) {...}
for (i = 1000; i >1; i /=10) {...}
Любой из блоков может отсутствовать, при том пустые операторы ";" сохраняются. Ну как-то так:
int i=15;
for (; i < 45; i+=5) {...}
for (i = 2; ; i*=i) {if (i==64) break; ...}
for (i=73; l > 15; ) {... i -= 2}
for (;;) {...} // while (true) {...}
Кроме того, на месте любого блока может быть несколько операторов. Разделяют их запятыми. Пример:
for (i =12, c = 15; i > 2; i++, c--) {...}
for ( init_l; finish_l; itter_l)
{
...
}
ну к примеру цикл for можно в теории расписать как
init_l;
while( finish_l )
{
...
itter_l;
}
{
...
}
ну к примеру цикл for можно в теории расписать как
init_l;
while( finish_l )
{
...
itter_l;
}
этот код чтобы остановить цикл
bool skipAndContinueOnNextI;
for (int i = 0; i <= 10; i++)
{
skipAndContinueOnNextI = false;
for (int j = 0; j <= 1000; j++)
{
///Какой то процес цикла i=0; и j по своему циклу!
if (условие)
{
skipAndContinueOnNextI = true;
break;
}
}
if (skipAndContinueOnNextI)
{
continue;
}
// тут какой-то код, который тоже надо пропустить
}
bool skipAndContinueOnNextI;
for (int i = 0; i <= 10; i++)
{
skipAndContinueOnNextI = false;
for (int j = 0; j <= 1000; j++)
{
///Какой то процес цикла i=0; и j по своему циклу!
if (условие)
{
skipAndContinueOnNextI = true;
break;
}
}
if (skipAndContinueOnNextI)
{
continue;
}
// тут какой-то код, который тоже надо пропустить
}
Для числа, например, от одного до пяти делай что-то. Будет делаться при 1,2,3,4,5.
Похожие вопросы
- Цикл for в Дельфи или Паскале
- *.bat - Не работает set /a внутри цикла for!
- Вопрос про цикл For
- Хорошо ли использовать бесконечный цикл for в C++?
- Объясните чайнику на пальцах: Как работает цикл (for) в C# ?
- цикл for не может обрабатывать массивы? (паскаль)
- C++. В операторе switch нельзя разве использовать case x? а x пробежать в цикле for?
- Вопрос по стилю в Си. Читаю C Elements of Style (Steve Qualline), встретила такой стиль записи цикла for
- С++, Чем отличаеться цикл for, от while?
- в языке СИ (просто СИ!!!!) чем отличаются два цикла. for(t=0; t