Как организовать цикл без использования циклических операторов? - C (СИ)
Формулировка задачи:
Как создать цикл в c без использования циклических операторов? (gotoxy,if,continue,break,return,exit,goto)
Решение задачи: «Как организовать цикл без использования циклических операторов?»
textual
Листинг программы
metka1: //аналог do{ }while(i<100);
{
//какой-то код внутри цикла
}
if(i<100)
goto metka1;
i=0; //аналог for(i=0;i<=100;i++)
metka2:
if(i>100)
goto ex;
{
//какой-то код внутри цикла
}
i++
if(i<=100)
goto metka2;
ex:
metka3: //аналог while(i<=100)
if(i>100)
goto ex;
{
//какой-то код внутри цикла
}
goto metka3;
ex:
Объяснение кода листинга программы
В данном коде используется принцип вложенности структур управления для организации циклов без использования циклических операторов.
metka1:// аналог do{ }while(i<100); В этой метке содержится код, который будет выполняться в рамках цикла. Условие продолжения цикла (i<100) проверяется после выполнения внутреннего кода. Если условие истинно, то управление возвращается на начало цикла.i=0;// аналог for(i=0;i<=100;i++) Здесь задается начальное значение переменнойiравное 0. Внутренний код будет выполняться до тех пор, пока значениеiменьше или равно 100. Еслиiстановится равным 101, то управление переходит к меткеex.metka2:Эта метка используется для организации вложенного цикла внутри основного цикла. Если значениеiстановится больше 100, то управление переходит к меткеex.metka3:// аналог while(i<=100) Здесь представлен цикл, который будет выполняться до тех пор, пока значениеiменьше или равно 100. Если значениеiстановится больше 100, то управление переходит к меткеex.ex:Эта метка используется для организации выхода из вложенных циклов при достижении условием значенияiравного 101.