Кибор » Кибор - Интегрированная среда разработки ботов » О программе Кибор » Версия 5.37 Добавление оператора continue

Страниц (1): [1]
 

1. Kibor - 14 Июля, 2018 - 05:34:21 - перейти к сообщению
Оператор continue используется только в циклах. В циклах for, while, loop, looptime, оператор continue выполняет пропуск оставшейся части кода тела цикла и переходит к следующей итерации цикла.

Пример на цикле for
В этом случае будут звучать оба сигнала по 5 раз
CODE:
for (int n=0; n<5; n++)
{
beep(1000, 100);
beep(2000, 100);
}


В этом случае все что находится после continue будет пропущено.
CODE:
for (int n=0; n<5; n++)
{
beep(1000, 100);
continue;
beep(2000, 100);
}



Пример на цикле while
В этом случае сигнал прозвучит пять раз
CODE:
int n=0;
while(n<5)
{
beep(1000, 100);
n++;
}


В этом случае n++ будет пропускаться и будет замкнутый цикл
CODE:
int n=0;
while(n<5)
{
beep(1000, 100);
continue;
n++;
}
2. 007wan - 29 Апреля, 2019 - 08:40:05 - перейти к сообщению
Kibor , Так а зачем это нужно? тоже самое будет если в конце где continue можно просто поставить перед кодом // или /* */
3. Dantes3000 - 29 Апреля, 2019 - 08:47:46 - перейти к сообщению
 007wan пишет:
можно просто поставить перед кодом //

Забыл
4. 007wan - 29 Апреля, 2019 - 09:11:59 - перейти к сообщению
Dantes3000 , Да блин. Я может тупой и не понимаю. я никогда не пользовался это функцией, а сейчас задался вопросом. Я имел ввиду вот что:
 Kibor пишет:
В этом случае n++ будет пропускаться и будет замкнутый цикл
CODE:
int n=0;
while(n<5)
{
beep(1000, 100);
continue;
n++;
}

 007wan пишет:
В этом случае можно просто сделать так:
CODE:
int n=0;
while(n<5)
{
beep(1000, 100);
//n++;
}

(Добавление)
 007wan пишет:
И цикл будет просто проходить вот так:
CODE:
int n=0;
while(n<5)
{
beep(1000, 100);
}
5. Dantes3000 - 29 Апреля, 2019 - 09:42:43 - перейти к сообщению
007wan , я тебе настоятельно рекомендую почитать пару статей про основы программирования, дабы не донимать людей своим бредом.
6. Kutuz_off - 29 Апреля, 2019 - 13:14:24 - перейти к сообщению
 007wan пишет:
Kibor , Так а зачем это нужно? тоже самое будет если в конце где continue можно просто поставить перед кодом // или /* */


Кибор привел пример использования без смысловой нагрузки. Обычно эта функция используется при определенном условии - таким образом можно делать более "умные" циклы.
Например: что-то в цикле работает стандартно, а что-то, при определенном условии - нужно оборвать выполнение и перевести к следующей итерации цикла.

for (int i=0; i<11; i++){

if (i==4){textout(999, 555, 333, "пропускаю 3 итерации", 0); i=i+2; sleep(2222); continue;}

sleep(333);
resettextout(1); textout(999, 555, 333, format(i)+ "continue", 0); //этот участок не сработает после выполнения continue;
}
sleep(3333);
7. 007wan - 30 Апреля, 2019 - 05:16:52 - перейти к сообщению
Kutuz_off , Спасибо. Теперь понял зачем. Спасибо за пример.
8. 007wan - 12 Мая, 2019 - 01:36:12 - перейти к сообщению
Как мне с помощь этой функции в loop сделать цикл что бы:
CODE:

loop()
{
//работает непрерывно этот участок
//-------------------
//прокрутит 1 раз этот участок, а дальше пропустит
}

Не говорите, что я могу сделать проще как-то так))
CODE:

int a =0;
loop()
{
a++;
//работает непрерывно этот участок
//-------------------
//прокрутит 1 раз этот участок, а дальше пропустит
if (a == 1)
{

}
}
9. Zireael - 12 Мая, 2019 - 10:31:35 - перейти к сообщению
 Цитата:
Как мне с помощь этой функции в loop сделать

Не нужна она тут.
CODE:
int flag=1;
loop()
{
messagebox("работает непрерывно этот участок");
if(flag)
{
flag=0;
messagebox("прокрутит 1 раз этот участок, а дальше пропустит");
}
}

Powered by ExBB FM 1.0 Final