лабораторные на Pasca (Кудрявцев)l
.pdfОглавление
Лабораторная работа № 1
Знакомство со средой Турбо Паскаль _______________________________ 5
Лабораторная работа № 2
Составление линейных программ _________________________________ 28
Лабораторная работа № 3
Типы данных. Функции преобразования типа ______________________ 38
Лабораторная работа № 4
Операции отношений. Логические операции _______________________ 45
Лабораторная работа № 5
Условныйи составной операторы ________________________________ 57
Лабораторная работа № 6
Оператор выбора_______________________________________________ 66
Лабораторная работа № 7
Циклы________________________________________________________ 74
Лабораторная работа № 8
Массивы______________________________________________________ 83
Лабораторная работа № 9
Строковый тип данных_________________________________________ 101
Лабораторная работа № 10
Процедуры и функции _________________________________________ 106
Лабораторная работа № 11
Множества ___________________________________________________ 121
Лабораторная работа № 12
Записи_______________________________________________________ 130
Лабораторная работа № 13
Файлы_______________________________________________________ 141
Лабораторная работа № 14
Модули______________________________________________________ 168
Лабораторная работа № 15
Динамические структуры данных________________________________ 173
4 |
Оглавление |
Лабораторная работа № 16
Процедуры подготовки к работе в графическом режиме_____________ 190
Лабораторная работа № 17
Рисование графических примитивов и фигур ______________________ 197
Лабораторная работа № 18
Управление цветами и шаблонами заливки (заполнения) ____________ 210
Лабораторная работа № 19
Битовые графические операции _________________________________ 218
Лабораторная работа № 20
Управление видеостраницами. Графические окна. Вывод текста______ 223
Лабораторная работа № 21
Управление клавиатурой _______________________________________ 231
Лабораторная работа № 22
Основные понятия объектно-ориентированного программирования __ 238
Лабораторная работа № 23
Элементы Turbo Vision __________________________________________ 249
Лабораторная работа № 24
Окна ________________________________________________________ 258
Лабораторная работа № 25
Интерьер_____________________________________________________ 268
Лабораторная работа № 26
Скроллинг ___________________________________________________ 281
Лабораторная работа № 27
Диалоговые окна ______________________________________________ 295
Приложение
Встроенный ассемблер _________________________________________ 320 Сообщения и коды ошибок _____________________________________ 368
5
Лабораторная работа № 1
ЗНАКОМСТВО СО СРЕДОЙ ТУРБО ПАСКАЛЬ
Система программирования Турбо Паскаль представляет собой единство двух в известной степени самостоятельных начал: компи- лятора с языка программирования Паскаль (язык назван в честь вы-
дающегося французского математика и философа Блеза Паскаля (1623–1662)) и некоторой инструментальной программной оболоч- ки, способствующей повышению эффективности создания про- грамм. Для краткости условимся в дальнейшем называть реализуе- мый компилятором язык программирования Паскаль языком Турбо Паскаль, а разнообразные сервисные услуги, предоставляемые про- граммной оболочкой– средой
Среда Турбо Паскаля – это первое, с чем сталкивается любой про- граммист, приступающий к практической работе с системой. Если по каким–либо причинам Вы не собираетесь писать собственные программы, можно пропустить эту главу, в которой приводятся минимальные сведения об основных приемах работы в среде Турбо
Паскаля.
Как начать работу с Турбо Паскалем
Система Турбо Паскаль довольно значительна по объему. Она по- ставляется на нескольких дистрибутивных дискетах и устанавлива- ется на жесткий диск. При развертывании системы на жестком дис- ке обычно создается отдельный каталог с именем BP (или TP, TURBO, PASCAL и т.п.), в который помещаются все файлы с дист- рибутивных дискет. Для вызова Турбо Паскаля необходимо оты- скать в древовидной структуре каталогов ПК этот каталог и в нем файл с именем TURBO. EXE. Этот файл содержит готовую к рабо- те диалоговую систему программирования Турбо Паскаль. В него входят минимально необходимые части Турбо Паскаля (текстовый редактор, компилятор, компоновщик, загрузчик). Для нормальной работы в диалоговой среде понадобятся также основная библиоте-
6 |
Лабораторная работа № 1 |
ка, располагающаяся в файле TURBO.TPL, и справочная служба (файл TURBO.HLP). В принципе, этих файлов достаточно для на- писания, компиляции и исполнения большинства примеров, содер- жащихся в этой книге.
Пусть перечисленные файлы располагаются в каталоге BP на диске C. Тогдадля вызова следует дать команду
C:\BP\BIN\TURBO.
По этой команде операционная система MS–DOS поставит на ис- полнение программу из файла TURBO.EXE: загрузит программу в оперативную память и передаст ей управление.
Не рекомендуется работать с системой, назначив в качестве катало- га по умолчанию (текущего каталога) тот, в котором хранятся пере- численные выше файлы (этот каталог будем называть системным). Во-первых, в таком случае можно ошибочно стереть какой–либо из файлов системы программирования и тем самым нарушить ее рабо- тоспособность, а во-вторых, этот каталог очень скоро заполнится другими файлами, прямо не относящимися к Турбо Паскалю. Суще- ствует и еще одна причина, по которой нежелательно работать в системном каталоге. Дело в том, что Турбо Паскаль имеет свойство «запоминать» свою настройку в двух файлах с именами TURBO.TP и TURBO.PCK. При вызове система начинает поиск этих файлов в текущем каталоге. Если этот каталог – Ваш индивидуальный, сис- тема всякий раз будетнастраиваться так, как Вы этого хотите. Если эти файлы не обнаружены в Вашем каталоге (а при первом обраще- нии к Турбо Паскалю так оно и будет), система продолжит поиск в системном каталоге, а не найдя их там, настроится стандартным образом. Впоследствии можно сохранить настроечные файлы в своем каталоге и тем самым избавить себя от необходимости пере- настройки системы всякий раз при обращении к ней.
После успешного вызова системы экран ПК приобретает вид, пока- занный на рис. 1.
Знакомство со средой Турбо Паскаль |
7 |
||
|
|
|
|
File Edit Search |
Run Compile Debug Tools Options Window |
Help |
|
╔═[■]═══════════════NONAME00.PAS═══════════════1═[↨]═╗ |
|
||
║ |
|
▲ ║ |
|
║ |
|
▓ ║ |
|
║ |
|
▓ ║ |
|
║ |
|
▓ ║ |
|
║ |
|
▓ ║ |
|
║ |
|
▓ ║ |
|
║ |
|
▓ ║ |
|
║ |
|
▓ ║ |
|
║ |
|
▓ ║ |
|
║ |
|
▓ ║ |
|
║ |
|
▓ ║ |
|
║ |
|
▓ ║ |
|
║ |
|
▓ ║ |
|
║ |
|
▼ ║ |
|
╚════1:1 ═══◄■▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒►═╝ |
|
||
F1 Help F2 Save |
F3 Open Alt+F9 Compile F9 Make Alt+F10 Local menu |
Рис.1. Вид экрана после вызова Турбо Паскаля
Сразу же скажем, что для выхода из Турбо Паскаля следует нажать клавишу Alt и, не отпуская ее, – клавишу с латинской буквой X, после чего можно отпустить обе клавиши.
Верхняя строка содержит «меню» возможных режимов работы Турбо Паскаля, нижняя – краткую справку о назначении основных функциональных клавиш. Вся остальная часть экрана принадлежит окну редактора, очерченному двойной рамкой и предназначенному для ввода и коррекции текста программ. В его верхней строке при- водятся имя того дискового файла, откуда был прочитан текст про- граммы (новому файлу присваивается имя NONAME00.PAS), два специальных поля, используемых при работе с устройством ввода «мышь» (эти поля выделены квадратными скобками), и цифра 1 – номер окна. В Турбо Паскале можно работать одновременно с не- сколькими программами (или частями одной крупной программы), каждая из которых может располагаться в отдельном окне редакто- ра, Среда позволяет использовать до девяти окон редактора одно- временно.
Кроме окна (окон) редактора, в Турбо Паскале используются также окна: отладочного режима, вывода результатов работы программы, справочной службы, стека, регистров. По желанию они могут вы-
8 |
Лабораторная работа № 1 |
зываться на экран поочередно или присутствовать на нем одновре- менно.
ФУНКЦИОНАЛЬНЫЕКЛАВИШИ
Функциональные клавиши используются для управления средой Турбо Паскаля. Они обозначаются F1, F2, ..., F12 и располагаются в самом верхнем ряду клавиатуры. С каждой из этих клавиш связы- вается некоторая команда меню. Действие почти всех функцио- нальных клавиш можно модифицировать тремя особыми клавиша-
ми: Alt (от ALTernative – дополнительный), Ctrl (ConTRoL – управле-
ние) и Shift (SHIFT – сдвиг). Эти клавиши используются подобно клавише временной смены регистра на пишущей машинке: нужно нажать на одну из них и затем, не отпуская ее, нажать функцио- нальную клавишу. В дальнейшем такое совместное нажатие двух клавиш будем обозначать знаком +. Например, Alt+F3 означает, что вместе с клавишей Alt необходимонажать клавишу F3, Ctrl+F9
– вместе с Ctrl нажимается клавиша F9 и т.д.
Ниже приводятся команды, которые передаются среде Турбо Паскаля функциональными клавишами и некоторыми их комбина- циями с клавишами Ctrl и Alt:
F1 – обратиться за справкой к встроенной справочной службе (Help – помощь);
F2 – записать редактируемый текст в дисковый файл;
F3 – прочитать текст из дискового файла в окно редактора;
F4 – используется в отладочном режиме: начать или продол-
жить исполнение программы и остановиться перед исполнением той ее строки, на которой стоит курсор;
F5 – распахнуть активное окно на весь экран;
F6 – сделать активным следующее окно;
F7 – используется в отладочном режиме: выполнить следую- щую строку программы; если в строке есть обращение к процедуре (функции), войти в эту процедуру и остановиться перед исполнени- ем первого ее оператора;
Знакомство со средой Турбо Паскаль |
9 |
|
|
F8 – используется в отладочном режиме: выполнить следую- щую строку программы; если в строке есть обращение к процедуре (функции), исполнить ее и не прослеживать ее работу;
F9 – компилировать программу, но не выполнять ее;
F10 – перейти к диалоговому выбору режима работы с помо- щью главного меню;
Ctrl+F9 – выполнить прогон программы: компилировать про- грамму, находящуюся в редакторе, загрузить ее в оперативную па- мять и выполнить, после чего вернуться в среду Турбо Паскаля;
Alt+F5 – сменить окно редактора на окно вывода результатов работы (прогона) программы.
Описание некоторых функциональных клавиш.
Во-первых, Вам понадобятся команды Ctrl+F9 для проверки рабо- ты Вашей программы и Alt+X для выхода из Турбо Паскаля. Кла- виши F2 и F3 помогут Вам в работе с Вашими каталогами и фай- лами. Командой ALT+F5 Вы в любой момент сможете просмотреть данные, выданные на экран в результатепрогона программы.
ТЕКСТОВЫЙ РЕДАКТОР
Текстовый редактор среды Турбо Паскаля предоставляет пользова- телю удобные средства создания и редактирования текстов про- грамм. Признаком того, что среда находится в состоянии редакти- рования, является наличие в окне редактора курсора – небольшого мигающего прямоугольника. Режим редактирования автоматически устанавливается сразу после загрузки Турбо Паскаля. Из режима
редактирования можно перейти к любому другому режиму работы Турбо Паскаля с помощью функциональных клавиш или выбора нужного режима из главного меню. Если среда находится в состоя- нии выбора из меню, курсор исчезает, а в строке меню появляется цветной указатель–прямоугольник, выделяющий одно из кодовых слов. Для перехода от состояния выбора режима из главного меню в состояние редактирования нужно нажать клавишу Esc (ESCape – ускользать, убегать), а для перехода к выбору из главного меню –
F10.
Рассмотрим основные приемы работы с текстовым редактором.
10 |
Лабораторная работа № 1 |
Для создания текста программы нужно ввести этот текст с помо- щью клавиатуры ПК подобно тому, как это делается при печатании текста на пишущей машинке. После заполнения очередной строки следует нажать на клавишу Enter, чтобы перевести курсор на сле- дующую строку (курсор всегда показывает то место на экране, куда помещается очередной вводимый символ программы).
Окно редактора имитирует длинный и достаточно широкий лист бумаги, фрагмент которого виден в окне. Если курсор достиг ниж- него края, осуществляется прокрутка окна редактора: его содер-
жимое смещается вверх на одну строку и снизу появляется новая строка листа. Если курсор достиг правой границы экрана, окно на- чинает по мере ввода символов смещаться вправо, показывая пра- вый край листа. Размеры листа по горизонтали и вертикали ограни- чиваются только общим числом символов в файле, которых не должно быть больше 64535, однако компилятор Турбо Паскаля вос- принимает строки программы длиной не более 126 символов.
Окно можно смещать относительно листа с помощью следующих клавиш:
PgUp – на страницу вверх (PaGe UP – страницу вверх); PgDn – на страницу вниз (PaGe DowN – страницу вниз); Ноте – в начало текущей строки (HOME – домой); End – в конец текущей строки (END – конец); Ctrl+PgUp – в начало текста;
Ctrl+PgDn – в конец текста.
Клавишами перевода курсора (эти клавиши помечены соответст- вующими стрелками и располагаются в правой части клавиатуры) его можно смещать по экрану. При достижении курсором границ окна оно смещается на строку или на символ.
Если Вы ошиблись при вводе очередного символа, его можно сте- реть с помощью клавиши, обозначенной стрелкой влево (клавиша Backspace располагается над клавишей Enter). Клавиша Del (от DELete – стирать) стирает символ, на который в данный момент указывает курсор, а команда Ctrl+Y – всю строку, на которой рас- полагается курсор.
Знакомство со средой Турбо Паскаль |
11 |
|
|
Следует помнить, что редактор Турбо Паскаля вставляет в конце каждой строки невидимый на экране символ–разделитель. Этот символ вставляется клавишей Enter, а стирается клавишами Backspace или Del. С помощью вставки/стирания разделителя можно «разрезать»/«склеить» строки. Чтобы «разрезать» строку, следует подвести курсор к нужному месту и нажать клавишу Enter, чтобы «склеить» соседние строки, нужно установить курсор в конец пер- вой строки (для этого удобно использовать клавишу End) и нажать
клавишу Del или установить курсор в начало следующей строки (клавишей Ноте) и нажать клавишу Backspace.
Нормальный режим работы редактора – режим вставки, в котором каждый вновь вводимый символ как бы «раздвигает» текст на эк- ране, смещая вправо остаток строки. Следует учитывать, что «раз- резание» и последующая вставка пропущенных строк возможны только в этом режиме. Редактор может также работать в режиме наложения новых символов на существующий старый текст: в этом режиме новый символ заменяет собой тот символ, на который ука- зывает курсор, а остаток строки справа от курсора не смещается вправо. Для перехода к режиму наложения нужно нажать клавишу Ins (INSert – вставка), если нажать эту клавишу еще раз, вновь вос- становится режим вставки. Признаком того, в каком режиме рабо- тает редактор, является форма курсора: в режиме вставки курсор похож на мигающий символ подчеркивания, а в режиме наложения он представляет собой крупный мигающий прямоугольник, засло- няющий символ целиком.
И еще об одной возможности редактора. Обычно редактор работает в режиме автоотступа. В этом режиме каждая новая строка начина- ется в той же позиции на экране, что и предыдущая. Режим автоот- ступа поддерживает хороший стиль оформления текстов программ:
отступы от левого края выделяют тело условного или составного оператора и делают программу более наглядной. Отказаться от ав- тоотступа можно командой Ctrl+O I (при нажатой клавише Ctrl на- жимается сначала клавиша O, затем О отпускается и нажимается клавиша I), повторная команда Ctrl+O I восстановит режим автоот- ступа.
Ниже перечислены наиболее часто используемые команды тексто- вого редактора Турбо Паскаля.
12 |
Лабораторная работа № 1 |
Смещение курсора
PgUp – на страницу вверх; PgDn – на страницу вниз; Ноте – в начало строки; Ctrl+PgUp – в начало текста; Ctrl+PgDn – в конец текста.
Команды редактирования
Backspace – стереть символ слева от курсора;
Del – стереть символ, на который указывает курсор; Ctrl+Y – стереть строку, на которой располагается курсор; Enter –вставить новую строку, разрезать старую;
Ctrl+O L – восстановить текущую строку (действует, если курсор не покидал измененную строку).
Работа с блоком
Ctrl+К В – пометить начало блока; Ctrl+К К – пометить конец блока; Ctrl+К H – отменить выделение; Ctrl+K Y – стереть блок;
Ctrl+К С – копировать блок; Ctrl+К V – переместить блок;
Ctrl+K W – записать блок в дисковый файл; Ctrl+K R – прочитать блок из дискового файла; Ctrl+K P – напечатать блок.
ОСНОВНЫЕ ПРИЕМЫ РАБОТЫВ СРЕДЕ ТУРБО ПАСКАЛЯ
Работа с файлами
Как уже говорилось, сразу после запуска Турбо Паскаля среда авто- матически переходит в режим редактирования текста, в котором можно подготовить новую программу или исправить существую- щую.