Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
pascal.pdf
Скачиваний:
114
Добавлен:
20.04.2015
Размер:
980.04 Кб
Скачать

 

45

Программирование на языке Pascal

Randomize; {Инициализируем генератор случайных чисел}

While Not KeyPressed Do {… пока пользователь не нажал клавишу}

Begin

GotoXY(Random(79), Random(23)); {в случайное место экрана} TextColor(Random(15)); {Случайный цвет}

Write('*');

End;

End.

Рисунок 22

Цикл с постусловием

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

(age<3) Or (age>150)

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

WriteLn('Такого возраста не может быть. Введите еще раз'); ReadLn(age);

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

Синтаксис таких циклов в Pascal следующий:

Repeat

{тело цикла}

Until Условие;

Используя такой вид циклов, текст программы, осуществляющей ввод корректного возраста преобразуется в следующий вид:

45

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