ПОКА
При необходимости выполнить тело цикла определённое количество
раз организуется счётчик итераций (повторов) цикла – переменная, значение которой увеличивается на единицу после каждого выполнения тела цикла. Это переменная используется в логическом выражении условия цикла Р. Перед началом цикла задаётся начальное значение переменной-счётчика, а в теле цикла это значение увеличивается на единицу (до оператора ПОКА ВСЁ) при каждой итерации цикла.
Использование в качестве условия цикла ПОКА заключительной записи (сигнальной метки) или признака конца файла.
Если необходимо обработать в цикле неизвестное заранее количество элементов (например, список, количество записей в котором неизвестно), то счётчик итераций цикла использовать не получиться.
Часто в конце данных находиться заключительная запись или сигнальная метка – это особая запись или значение, размещённое в конце данных, она означает конец данных и должна содержать значение, которое чётко отличается от других обрабатываемых данных.
Возможен также случай, когда идёт обработка данных размещённых в файле на внешнем устройстве (магнитном диске, флешке и др.). При это сигнальная метка не требуется, так как в каждом файле при его создании или изменении последним символом добавляется маркёр конца файла – EOF – End of File. В качестве условия цикла тогда можно использовать одно из равнозначных выражений:
ПОКА ещё данные
ПОКА ещё записи
ПОКА есть записи
ПОКА не EOF
С такими условиями цикла все действия между операторами ПОКА и ПОКА ВСЁ будут повторяться, пока не будет сделана попытка прочесть данные после символа EOF. Когда это произойдёт, программа получит сигнал, обозначающий что данных в файле больше нет и условие ПОКА – ложно.
И+ПРГ