Раздел 5.3 - Простые циклы

В Ada существует несколько 'циклических конструкций', которые применяются, когда необходимо неоднократное повторение чего-либо. Простейший цикл повторяется бесконечно. Простой цикл начинается со слова ``loop'', содержит инструкции, которые необходимо многократно повторять и заканчивается словами ``end loop;''. Ниже приведен пример тела процедуры, которая после запуска циклически выводит одно и то же сообщение бесконечное число раз:


Verbose Configure

Цикл может быть завершен с помощью инструкций ``exit'' или ``exit when'' (похожих на инструкцию break языка С). Инструкция `exit' приводит к немедленному выходу из "самого внутреннего" цикла. Инструкция `exit when' приводит к выходу из "самого внутреннего" цикла только в случае истинности соответствующего условия.

Инструкция `exit when' особенно полезна в случае, если нужно выполнить некоторые действия для того, чтобы выяснить необходимость прекращения цикла. Такие конструкции, называемые ``loop-and-a-half'', начинаются словом "loop", производят вычисления, определяющие необходимость остановки цикла, затем используют `exit when' для выхода из цикла при выполнении условия остановки и далее обрабатывают результат.

Ниже приведен пример такой конструкции: программа считывает список чисел , печатает их квадраты и останавливается (без вывода на экран) когда встречает число `0':


Verbose Configure


Упражнение:

Каим будет конечное значение A?

A := 1;
loop
 A := A + 1;
 exit when A > 3;
end loop;
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5

Вы можете также:

PREVIOUS Перейти к предыдущему разделу

NEXT     Перейти к следующему разделу

OUTLINE  Вернуться к содержанию Урока 5

David A. Wheeler (dwheeler@ida.org)

Перевод: Юрий Королев   Общая редакция перевода: Г.Ю. Сисюк

Исходная копия этого документа находится по адресу "http://www.adahome.com/Tutorials/Lovelace/s5s3.htm".

Исходная копия перевода размещена на сайте http://www.ada-ru.org