![]()
|
|||
Инструкции итерации. Синтаксис. Инструкция do-while. Инструкция while12.6 Инструкции итерации Инструкция итерации состоит из заголовка (который содержит ключевое слово и заключённую в скобки управляющую конструкцию) и тела (которое состоит из Инструкций). Синтаксис ИнструкцияИтерации : do Инструкция while ( Выражение ); 12.6.1 Инструкция do-while Значение нетерминала do Инструкция while ( Выражение ); вычисляется по следующей схеме: 1. Пусть V = empty. 2. Вычислить значение Инструкции. 3. Если Результат(2). значение не равно empty, приравнять V = Результат(2). значение. 4. Если Результат(2). тип равен continue и Результат(2). цель принадлежит текущему набору меток - переход на шаг 7. 5. Если Результат(2). тип равен break и Результат(2). цель принадлежит текущему набору меток - вернуть (normal, V, empty). 6. Если Результат(2) является неожиданным завершением, вернуть Результат(2). 7. Вычислить значение Выражения. 8. Вызвать ПолучитьЗначение(Результат(7)). 9. Вызвать ToBoolean(Результат(8)). 10. Если Результат(9) равен true - переход на шаг 2. 11. Вернуть (normal, V, empty); 12.6.2 Инструкция while Значение нетерминала ИнструкцияИтерации : while ( Выражение ) Инструкция вычисляется по следующей схеме: 1. Пусть V = empty. 2. Вычислить значение Выражения. 3. Вызвать ПолучитьЗначение(Результат(2)). 4. Вызвать ToBoolean(Результат(3)). 4. Если Результат(4) равен false - вернуть (normal, V, empty). 6. Вычислить значение Инструкции. 7. Если Результат(6). значение не равно empty, приравнять V = Результат(6). значение. 8. Если Результат(6). тип равен continue и Результат(6). цель принадлежит текущему набору меток - переход на шаг 2. 9. Если Результат(6). тип равен break и Результат(6). цель принадлежит текущему набору меток - вернуть (normal, V, empty). 10. 2. Если Результат(6) является неожиданным завершением, вернуть Результат(6). 11. Переход на шаг 2.
|
|||
|