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

 

46

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

Uses Crt;

Var age : Byte;

Begin

ClrScr;

Repeat

WriteLn('Введите свой возраст');

ReadLn(age);

Until (age>=3) and (age<=150)

WriteLn('Oк. Такой возраст нас устраивает');

End.

Обратите также внимание, что условие в цикле Repeat отличается от условия в цикле While. Его значение изменилось на противоположное. Дело в том, что если перевести на русский язык конструкцию цикла с постусловием, то получится следующая фраза: «Повторять операторы, содержащиеся в теле цикла до тех пор, пока не выполняется УСЛОВИЕ».

Оператор досрочного прерывания цикла (break)

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

Практикум: управление символом на экране при помощи клавиш управления положения курсором

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

Для того, чтобы отловить нажатие функциональных клавиш (ESC, клавиши управления курсором), будем использовать функцию ReadKey из модуля Crt. Эта функция возвращает код нажатой пользователем клавиши. Нужные нам коды мы можем посмотреть в специальных таблицах.

Клавиша

Код

ESC

27

Вверх

72

Вниз

80

Влево

75

Вправо

77

Для того, чтобы проверить код нажатой клавиши нам потребуется ввести переменную символьного типа, т.к. ReadKey возвращает символ, соответствующий нажатой клавише. Сама проверка осуществляется следующим образом: символьная переменная сравнивается с кодом, записанным после символа «шарп» (или «решетка») – «#».

Uses Crt;

Var C : Char; {Char – символьный тип данных}

Begin

C:=ReadKey;

46

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