Язык процедур 2-REXX для OS-2


Повторяющиеся циклы


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

Ниже приведен пример цикла, который повторяется фиксированное число раз.

DO num инструкция1 инструкция2 инструкция3 ... END

Num представляет собой целое число, указывающее количество повторений цикла.

Процедура LOOP.CMD является примером простого повторяющегося цикла.

/* Простой цикл */ DO 5 SAY 'Спасибо' END EXIT

Ниже приведен протокол работы процедуры LOOP.CMD:

[C:\]loop Спасибо Спасибо Спасибо Спасибо Спасибо

[C:\]

Инструкция DO может также иметь следующий вид:

DO XYZ = 1 to 10

Инструкция DO такого типа подсчитывает каждый проход по циклу, поэтому этот счетчик можно использовать как переменную. Значение XYZ изменяется (на 1) каждый раз, когда отрабатывает цикл. Значение 1 (или любое другое число) присваивается переменной, когда цикл выполняется первый раз. Значение 10 (или любое другое число) будет присвоено переменной при последнем проходе по циклу.

Процедура NEWLOOP.CMD является примером подобного цикла:

/* Цикл с инструкцией DO другого типа */ sum = 0 DO XYZ = 1 to 7 SAY 'Введите значение' XYZ PULL value sum = sum + value END SAY 'Общий итог равен' sum EXIT

Ниже приведен протокол работы процедуры NEWLOOP.CMD:

[C:\]newloop Введите значение 1 2 Введите значение 2 4 Введите значение 3 6 Введите значение 4 8 Введите значение 5 10 Введите значение 6 12 Введите значение 7 14 Общий итог равен 56

[C:\]

После завершения цикла выполнение процедуры продолжается с инструкции, следующей за инструкцией END (которая свидетельствует о конце цикла).



Содержание раздела