Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
infa (1).docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
318.43 Кб
Скачать

58 Оператор for – бесконечный цикл. Оператор for – пустой цикл.

Для создания бесконечного цикла можно использовать любой оператор цикла, но чаще всего для этого выбирают оператор for. Так как в операторе for может отсутствовать любая секция, бесконечный цикл проще всего сделать, оставив пустыми все секции. Это хорошо показано в следующем примере:

for( ; ; ) printf("Этот цикл крутится бесконечно.\n");

Если условие цикла for отсутствует, то предполагается, что его значение — ИСТИНА. В оператор for можно добавить выражения инициализации и приращения, хотя обычно для создания бесконечного цикла используют конструкцию for( ; ; ).

Как известно, цикл for позволяет повторять один или более операторов программы до тех пор, пока выполняется заданное условие. В прошлом для искусственной задержки выполнения программы, например при выводе сообщения, программисты помещали в нее "ничего не делающий", или пустой цикл. Например, в следующем цикле for - в течение 100 повторений не выполняется никаких действий: for (counter = 1; counter <= 100; counter++);

В таком случае производится инициализация цикла и затем многократно выполняется проверка и увеличение управляющей переменной, пока условие цикла остается истинным. На эти многократные проверки расходуется процессорное время, что и вызывает задержку выполнения программы. Если программе нужна более длительная задержка, то можно изменить условие завершения: for (counter =1; counter <= 10000; counter++);

59. Цикл while с постусловием. Синтаксис. Различие в выполнении с оператором while с предусловием.

Цикл "while" с постусловием отличается от цикла с предусловием тем, что сначала выполняется блок цикла, а потом проверяется условие. Если условие истинно, то цикл будет выполнен еще раз, и так до тех пор, пока условие будет истинно. Синтаксис цикла с постусловием такой (обратите внимание на обязательную точку с запятой после условия):

do

{

Блок инструкций

}

while (условие);

Поскольку условие проверяется после выполнения тела цикла, то блок цикла с постусловием всегда будет выполнен хотя бы один раз, независимо от истинности условия. Это может привести к ошибкам, поэтому использовать цикл while с постусловием следует только тогда, когда это действительно упрощает алгоритм.

60.Бесконечные циклы

Как показывает практика, достаточно легко сделать ошибку и невернозадать условие окончания цикла, которое всегда будет истинным, — при этом тело

цикла станет выполняться бесконечно. Подобная ситуация называется зацикливанием. В некоторых случаях программисты специально применяют подобный трюк, чтобы организовать бесконечный цикл, в котором будут приниматься и обрабатываться.

Исключения

Управление порядком выполнения программы может происходить не только с помощью условных ператоров и операторов цикла, но и при возникновении исключений — ситуаций в программе или операционной системе, требующих немедленного реагирования. Например, при выполнении оператора присваивания и вычислении выражения произошло деление на ноль. Программа остановилась, так как не знает, что ей делать дальше, — ведь получено ошибочное значение. Чаще всего выполнение программы просто рекращается по ошибке, но современные системы

разработки позволяют программисту явно контролировать возникновение самых разных исключений (они еще называются исключительными ситуациями, требующими немедленного вмешательства) и указывать, какие операторы следует выполнять при их возникновении.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]