русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Занятие 5. Работа с клавиатурой. Стандартные процедуры read и readLn. Стандартные функции readKey и KeyPressed; их применение в циклах.


Дата добавления: 2014-11-28; просмотров: 505; Нарушение авторских прав


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

Самая простая и часто применяемая техника организации приема информации основывается на использовании уже знакомых Bам процедур read и readln. Расширим знания о них. Эти процедуры работают со стандартным входным файлом, который отождествлен с “консолью”, т. е. с клавиатурой и экраном дисплея. На практике это означает, что информация, введенная с клавиатуры, помимо обработки процедурами, будет отображаться на экране.

Удобством указанных процедур является автоматическое преобразование ими вводимой цепочки символов в значение заданного типа. Так, если в разделе описания переменных имеется описание вида

Var

Chislo : integer;

то выполнение оператора readln (Chislo) будет происходить следующим образом. Программа будет приостановлена в ожидании ввода с клавиатуры символов, изображающих целое число. После ввода этих изображений они будут автоматически преобразованы в соответствующие двоичные значения и присвоены переменной Chislo. Аналогично организован прием значений действительного, символьного и строкового типа. Если read(readln) не может выполнить преобразования, то генерируется ошибка № 106 – Invalid numeric format (Неверный формат числовых данных) и выполнение программы прекращается. Это является стандартной реакцией, которую выполняет программа, взявшая на себя обработку ошибок. Мы вернемся еще к обработке ошибок, вызванных некорректным вводом, в теме “Процедуры и функции”, где научимся правильно составлять и использовать вспомогательные подпрограммы. А пока приведем пример применения этих процедур ввода при организации циклов.

Program Useread;



Var

X, Y : Byte;

Stop : String;

Begin

TextBackGround;

Randomize;

repeat

X:=Random (76);

Y:=Random (23);

GoToXY (X, Y);

TextColor (Random(15));

write(‘***’);

X:=1;

Y:=24;

write (‘Для остановки программы наберите “Стоп“‘);

write (‘Для продолжения – любую клавишу ‘);

readln(Stop);

until (Stop=‘Стоп‘) or (Stop =‘стоп‘);

readln;

End.

Примечание. Здесь использованы следующие процедуры:

GoToXY (X, Y:Byte) - перемещает курсор к элементу экрана с заданными координатами, учитывая, что размер экрана в текстовом режиме 25 строк по 80 символов.

TextBackGround (Color : Byte) – задает цвет фона.

TextColor (Color : Byte) – задает цвет символов.

Однако, несмотря на простоту и удобство, стандартные процедуры read и readln не обеспечивают всеж потребностей, возникающих при работе с клавиатурой. Их важнейший недостаток в том, что вместе с приемом символов они выполняют их отображение на экран (так называемое “эхо на монитор”). В большинстве случаев это либо не нужно, либо недопустимо. Например, если программа реализует некоторый оконный интерфейс, то вывод вводимых символов испортит изображение. Кроме того, они рассчитаны только на ввод относительно небольшого подмножества символов (буквы, цифры, знаки препинания) и частичного использования специальных клавиш (например, Backspace для отмены только что введенного символа). Эти процедуры не могут распознать нажатие функциональных или редактирующих клавиш и их сочетаний с управляющими клавишами Ctrl, Alt, Shift. В силу указанных причин процедуры read и readln редко используются в серьезных программах.



<== предыдущая лекция | следующая лекция ==>
Задачи для самостоятельного решения | Стандартная функция readKey


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.084 сек.