Готовы ли вы погрузиться в мир программирования на COBOL и изучить универсальный оператор PERFORM? В этой статье блога мы разгадаем тайны оператора COBOL PERFORM и обсудим различные методы, позволяющие улучшить ваши навыки программирования. Итак, берите свой любимый напиток, садитесь поудобнее и отправляйтесь в это захватывающее путешествие!
- Основное утверждение PERFORM:
Давайте начнем с основ. Оператор COBOL PERFORM используется для многократного выполнения указанного набора операторов. Он действует как механизм потока управления, позволяя выполнять блок кода несколько раз, пока не будет выполнено определенное условие.
PERFORM 10 TIMES
DISPLAY "Hello, World!"
END-PERFORM.
В приведенном выше примере оператор PERFORM 10 TIMESпредписывает программе выполнить блок кода десять раз. На каждой итерации будет отображаться сообщение «Hello, World!» на экране.
- Условное выполнение:
Иногда вам может потребоваться выполнить блок кода на основе определенного условия. Для этого в COBOL предусмотрены предложенияUNTILиVARYING.
PERFORM UNTIL TOTAL-COUNT > 100
ADD 1 TO TOTAL-COUNT
END-PERFORM.
В приведенном выше фрагменте кода инструкции в блоке PERFORM будут выполняться до тех пор, пока значение переменной TOTAL-COUNTне превысит 100. Это позволяет выполнять определенные операции динамически в зависимости от меняющихся условий.
<старый старт="3">
COBOL позволяет вкладывать операторы PERFORM друг в друга. Это может быть полезно, когда вам нужно выполнить сложные операции.
PERFORM PROCESS-ITEM THRU END-PROCESS-ITEM
VARYING I FROM 1 BY 1
UNTIL I > MAXIMUM-ITEMS.
В этом примере блок PERFORM вызывает подпрограмму с именем PROCESS-ITEMи продолжает итерацию до тех пор, пока значение Iне превысит предел MAXIMUM-ITEMS.
- PERFORM FOR TEST:
Оператор PERFORM также поддерживает предложениеWITH TEST. Он позволяет указать условие для проверки перед входом в цикл.
PERFORM PROCESS-RECORD WITH TEST AFTER UNTIL EOF-FLAG = 'Y'.
Здесь блок PERFORM будет выполнять подпрограмму PROCESS-RECORDдо тех пор, пока переменная EOF-FLAGне равна «Y». Условие проверяется после первой итерации.
- PERFORM THRU:
ПредложениеTHRUв инструкции PERFORM позволяет указать диапазон абзацев или разделов для выполнения.
PERFORM PROCESS-INPUT THRU END-PROCESS-INPUT.
В этом примере все абзацы или разделы между PROCESS-INPUTи END-PROCESS-INPUTбудут выполняться последовательно.
<ол старт="6">
Инструкция
PERFORM UNTILв сочетании с инструкцией EXITобеспечивает элегантный способ выхода из цикла на основе условия.PERFORM UNTIL EXIT-PRESSED = 'Y'
DISPLAY "Press Y to exit."
ACCEPT EXIT-PRESSED.
END-PERFORM.
В этом случае цикл продолжается до тех пор, пока пользователь не введет «Y» для установки переменной EXIT-PRESSED, что приведет к завершению цикла.
- PERFORM VARYING:
ИнструкцияPERFORM VARYINGпозволяет определить цикл, который выполняет итерацию по диапазону значений.
PERFORM VARYING I FROM 1 BY 1 UNTIL I > 10
DISPLAY I.
В этом примере цикл выполнится десять раз, отображая значение Iна каждой итерации.
Поздравляем! Теперь вы изучили несколько приемов, позволяющих максимально эффективно использовать оператор COBOL PERFORM. Помните: практика ведет к совершенству, поэтому не стесняйтесь экспериментировать с этими концепциями и исследовать их дальше.