Главное меню
Главное меню Турбо–Паскаля содержит 10 основных разделов:File, Edit, Search, Run, Compile, Debug, Tools, Options, Window, Help[3, 10].
Раздел File (работа с файлами) позволяет осуществлять операции с файлами (создавать, записывать, считывать и т.п.).
Раздел Edit (редактирование) позволяет выполнять операции с фрагментами текста (копировать, вставлять, удалять фрагмент и т.п.).
Раздел Search (поиск) позволяет осуществлять поиск фрагментов текста, заменять фрагмент текста, находить ошибки и подпрограммы.
Раздел Run (выполнить) служит для компиляции и выполнения программы.
Раздел Compile (компилировать) предназначен для компиляции программы и её записи в оперативную память или на магнитный диск. Следует отметить, что на магнитный диск программа компилируется в случае создания загружаемого файла (с расширением .EXE) или модуля (с расширением .TPU).
Раздел Debug (отладка) служит для упрощения процесса отладки пользовательских программ.
Раздел Tools (инструменты) позволяет задать программы, которые можно запускать не выходя из интегрированной среды.
Раздел Options (варианты) позволяет изменить некоторые параметры системы Турбо–Паскаль, связанные с конфигурацией компьютера.
Раздел Window (работа с окнами) позволяет работать с окнами (открывать, закрывать, перемещать, изменять размеры окон и т.п.).
Раздел Нelp (помощь) может быть выполнен с помощью зарезервированной клавиши F1. Информация в системе Help снабжена комментариями, что ускоряет поиск нужной темы. Не выходя из окна редактирования, можно установить курсор на любое слово и нажать Ctrl – F1 – на экране появится информационное сообщение.
File – работа с файлами.Команда File позволяет загружать с диска и записать на диск файлы, просматривать оглавление дисков, осуществлять временный или окончательный выход из системы Турбо–Паскаль. Рассмотрим более подробно функции из подменю File.
Функция New открывает окно редактора для набора новой программы или любого произвольного текста. После подачи команды на экране отображается пустое окно с наименованием NONAMEOO.PAS. Если программа находится на диске или дискете, её можно считать, вызвав функцию меню Load(F3).При этом будет открыто «диалоговое» окно для ввода имени файла (рис. 32) [10].
Рис. 32. Диалоговое окно для ввода имени файла
Имя файла можно ввести тремя способами:
а) набрать с клавиатуры (для программ на Паскале расширение указывать необязательно, (например: matr, simplex и т.д.), для прочих текстовых файлов требуется указывать имя и расширение (например: data.txt, result. и т.д.);
б) указать формат просматриваемых файлов (например: *.pas, *.*, *. и т.д.), нажать Enter, выбрать имя файла из списка файлов текущего каталога;
в) нажать клавишу ¯ и выбрать имя файла из списка уже указывавшихся файлов.
Также файл можно ввести, используя список файлов, находящийся в разделе меню File. Здесь указываются редактировавшиеся, но к данному моменту удаленные из редактора файлы.
Для записи программы под новым именем используется функция Save as. При этом, как и в предыдущем случае, будет открыто «диалоговое» окно для ввода имени файла. Для записи программы под прежним именем используется функция Save (F2).Однако при записи только что набранных программ эта функция работает так же, как и функция Save as. Команду Save рекомендуется использовать при наборе текста периодически, каждые несколько минут, во избежание потери набранного текста при сбое компьютера.
Если во время записи появится сообщение:
«File <имя файла> already exists. Overwrite?»
«Файл <имя файла> уже существует. Переписать?»,
то, если находящийся на диске файл представляет собой более раннюю версию вашей программы и он вам не нужен, нажмите – Y, если нет, то – N.
Функция Save all записывает все редактировавшиеся файлы.
Функция Change dir позволяет изменить текущий каталог. После вызова этой функции и появления «диалогового» окна установить каталог можно тремя способами:
– ввести с клавиатуры;
– используя «дерево каталогов» (Dyrectory tree) и клавиши передвижения совместно с Enter;
– используя список упоминавшихся каталогов (для вызова этого списка необходимо, находясь в Directory name, нажать ¯).
Для окончания ввода нажмите Alt – K. Для отмены ввода – Esc. Для восстановления первоначального состояния дерева каталогов используется кнопка Revert.
Функция Print позволяет напечатать текст программы. Функция Printer setup устанавливает параметры работы принтера.
Функция DOS shell осуществляет временный выход в DOS. Для возврата в Турбо-Паскаль необходимо завершить все программы, набрать Exit и нажать Enter.
Функция Exit (Alt – X)- выход из Турбо-Паскаля. Если, выходя из Турбо – Паскаля, вы не записали редактируемые файлы, то появится сообщение:
«Файл <имя файла> был изменен. Записать?»
«Если «да», нажмите – Y, если «нет» – N».
Работа с окнами (Window). Окно –это один из видимых элементов интегрированной среды Турбо – Паскаля, в котором может отображаться различная информация: редактируемый текст, значения переменных и т.д. Окно имеет заголовок и может иметь порядковый номер от 1 до 9. Окно, с которым в данный момент работает программист, называется активным и имеет двойную рамку [3, 10].
Чтобы перейти из одного окна в другое, необходимо нажать Alt – <номер окна>, при этом окно с указанным номером станет активным. Эту же операцию можно осуществить, нажав Alt – 0 (функция меню Window/List), выбрав, используя стрелки, необходимый заголовок окна и нажав Enter.
Интегрированная среда запоминает порядок вашей работы с окнами. Нажав Shift – F6 (функция меню Window/Previos), вы перейдете в окно, в котором только что работали, нажав F6 (функция меню Window/Next), вы перейдете в окно, к которому дольше всего не обращались.
Можно менять размер окон. После нажатия Ctrl – F5 (функция меню Window/Size/Move) можно, нажимая клавиши со стрелками, Home, End, PgUp, PgDn, Shift – <стрелки> и затем Enter, изменить размер и положение окна. Клавишей F5 (функция меню Window/Zoom) можно увеличить размер окна до максимально возможного размера. Повторное нажатие F5 уменьшает окно до первоначальных размеров. Функция меню Window/Title располагает окна так, чтобы полностью было видно каждое окно. Функция меню Window/Cascad располагает окна друг за другом так, чтобы был виден заголовок и номер каждого окна.
Комбинация клавиш Alt – F3 (функция меню Window/Close) закрывает активное окно. Эту же операцию можно осуществить, нажав Alt – 0, выбрав, используя стрелки, необходимый заголовок окна, и нажавDel. Функция меню Window/Close all закрывает все окна.
Функция меню Window/Refresh display восстанавливает (перерисовывает) экран интегрированной среды.
Редактор (Edit, Search). Редактор–это программа, предназначенная для набора текстов и исправления ошибок в них. В данном разделе рассмотрены возможности редактора языка Турбо – Паскаль.
В табл. 4 приведены функции некоторых клавиш, используемых при работе с редактором.
Таблица 4
Клавиша (и) | Выполняемая операция | ||||
Передвижение курсора | |||||
Ctrl–S или стрелка влево | на символ влево | ||||
Ctrl–D или стрелка вправо | на символ вправо | ||||
Ctrl–A или Ctrl–стрелка влево | на слово влево | ||||
Ctrl–F или Ctrl–стрелка вправо | на слово вправо | ||||
Ctrl–Eилистрелка вверх | на строку вверх | ||||
Ctrl–Xилистрелка вниз | на строку вниз | ||||
Home | в начало строки | ||||
End | в конец строки | ||||
Ctrl–RилиPgUp | на страницу вверх | ||||
Ctrl–CилиPgDn | на страницу вниз | ||||
Ctrl–Home | к верху окна | ||||
Ctrl–End | к низу окна | ||||
Ctrl–PgUp | в начало текста | ||||
Ctrl–PgDn | в конец текста | ||||
Ctrl–Q,B | в начало блока | ||||
Ctrl–Q,K | в конец блока | ||||
DelилиCtrl–G | удаление символа | ||||
BackSpaceилиCtrl–H | удаление символа слева | ||||
Ctrl–Y | удаление строки | ||||
Ctrl–Q,Y | удаление до конца строки | ||||
Ctrl–T | слова справа | ||||
Восстановление | |||||
Alt–BackSpace | восстановление текста | ||||
Работа с блоками | |||||
Shift–<клавиши передвижения> | выделение блока | ||||
Ctrl–K,B | отметка начала блока | ||||
Ctrl–K,K | отметка конца блока | ||||
Ctrl–K,T | выделить слово | ||||
Продолжение табл. 4 | |||||
Ctrl–K,C | копировать блок | ||||
Ctrl–K,V | передвинуть блок | ||||
Ctrl–K,H | снятие/восстановление выделения | ||||
Ctrl–K,Y | удаление блока | ||||
Ctrl–K,W | считывание блока из файла | ||||
Ctrl–K,R | запись блока в файл | ||||
Ctrl–K,P | печать блока | ||||
Ctrl–K,I | смещение текста в блоке вправо | ||||
Ctrl–K,U | смещение текста в блоке влево | ||||
Поиск и замена текста | |||||
Ctrl–Q,F | поиск текста | ||||
Ctrl–L | повторный поиск текста | ||||
Ctrl–Q,A | замена текста | ||||
Прочие команды | |||||
Ctrl–W | смещение текста вверх | ||||
Ctrl–Z | смещение текста вниз | ||||
Ctrl–K,n(n = 0..9) | установка метки | ||||
Ctrl–Q,n(n = 0..9) | переход на метку | ||||
TabилиCtrl–I | табуляция | ||||
Enter | раздвижение, перенос строк | ||||
Ctrl–N | раздвижение строк | ||||
Ctrl–P,Ctrl–<символ> | ввод управляющего символа | ||||
Ctrl–F1 | контекстная справка | ||||
Esc | отмена команды | ||||
Переключение режимов редактора | |||||
InsилиCtrl–V | вставки/замещения | ||||
Ctrl–O,I | при нажатии Enter курсор переводится в следующую строку и помещается в начало строки/под первый символ в строке | ||||
Ctrl–O,T | Установка/отмена фиксированной табуляции | ||||
Для получения справки о прочих режимах редактора необходимо войти в Option/Enviroment/Editor и использовать клавишу F1 | |||||
Из перечисленных в таблице функций только поиск и замена требуют ввода дополнительной информации, поэтому рассмотрим их применение на примере. При нажатии Ctrl – Q, A на экране появляется диалоговое окно (рис. 31). Для выполнения операции требуется ввести заменяемый текст в строке Text to find, заменяющий текст в строке New text, установить, если необходимо, режимы поиска и замены:
– Case sensitive – отличие строчных и прописных букв;
– Whole words only – поиск отдельных слов;
– Regular expression – поиск математических выражений;
– Promt on replace – запрос подтверждения при замене;
– Forward – поиск сверху вниз;
– Backward – поиск снизу вверх;
– Global – поиск во всем тексте;
– Selected text – поиск в выделенном тексте (блоке);
– From cursor – поиск от курсора;
– Entire scope – поиск от начала текста.
Для однократной замены подведите клавишей Tab подсветку на кнопку «OК» и нажмите Enter или нажмите Alt – K. Чтобы поиск продолжался автоматически до тех пор, пока искомая строка встречается в тексте, используйте кнопку «Change all» или нажмите Alt – A.
Функции поиска и замены можно вызвать также, используя меню Search. Здесь же содержатся функции:
– Go to line number – переход в строку с данным номером;
– Show last compiler error – показать последнюю ошибку компилятора (Ctrl – Q, W);
– Find error – нахождение в тексте программы ошибки, возникшей при выполнении программы;
– Find procedure – нахождение в тексте программы процедуры с данным именем.
В разделе меню Edit содержатся функции для копирования блока из одного окна в другое. Порядок копирования следующий:
а) выделить блок в одном окне;
б) вызвать функцию Edit/Cut – перенести выделенный блок в специальное окно, называемое ClipBoard, – или Edit/Copy –скопировать выделенный блок в ClipBoard;
в) перейти в другое окно и подвести курсор к месту вставки;
г) вызвать функцию Edit/Paste.
Другие функции раздела меню Edit:
– Undo, Redo - восстановление удаленного текста;
– Clear - удаление блока (Ctrl – Q, Y);
– Show ClipBoard - показать ClipBoard в отдельном окне.
Компиляция и выполнение программы (Сompile).Персональный компьютер PC, как и большинство микрокомпьютеров, имеет процессор, который представляет собой его рабочий механизм. Программист, как правило, составляет программу на алгоритмических языках высокого уровня, а компьютер обрабатывает программы только в машинных кодах. Для перевода программы в машинные коды служит компилятор. Компилятор Турбо – Паскаля транслирует (или переводит) программу, написанную на Паскале, в команды, которые могут быть восприняты компьютером. Компилятор, таким образом, является программой, пересылающей данные: она считывает текст вашей программы и записывает его на соответствующем машинном коде.
Компиляция начинается нажатием клавиш Alt – F9. Если во время компиляции обнаруживается ошибка, компиляция прекращается, курсор подводится к месту ошибки и указывается номер и тип ошибки. Если при этом нажать F1,то можно получить информацию о данном виде ошибки на английском языке. Выход из справки – Esc. По завершению компиляции на экран выдается сообщение (рис. 33):
Рис. 33. Окно сообщения о завершении компиляции
Для запуска программы необходимо нажать Ctrl – F9.
Если результаты расчетов вашей программы выводятся на экран, то по окончании работы программы их можно просмотреть, нажав Alt – F5. Выход из режима просмотра – Esc. Если результаты расчетов выводятся в файл, то по окончании работы программы этот файл можно считать с диска или дискеты. Если после этого вы вновь запустите программу, то по окончании расчетов появится сообщение:
«Файл был изменен. Перезагрузить?»
«Если «да», нажмите – Y, если «нет» – N».
Отладка программы (Run, Debug).В программе могут быть разнообразные ошибки: синтаксические, семантические и логические. Ошибки на этапе компиляции (или синтаксические ошибки) возникают в том случае, если написанные вами операторы Паскаля не удовлетворяют требованиям Паскаля. Другой возможный тип ошибок – это ошибки этапа выполнения (или семантические ошибки). Это происходит в том случае, если при выполнении программы предпринимается попытка выполнить недопустимое действие: открыть несуществующий файл, например, или разделить число на ноль. В этом случае Турбо – Паскаль печатает на экране сообщение об ошибке, которое выглядит примерно так:
Runtime error at Seg:Ofs (Ошибка этапа выполнения в Сегменте: Смещении).
Наконец, программа может содержать логические ошибки, связанные с неправильным составлением алгоритма. Этот тип ошибок наиболее труден для обнаружения, и поэтому он может быть одной из основных причин возникновения необходимости использования отладчика.
Перед применением отладчика программа должна быть откомпилирована. Затем, нажимая F7 или F8, можно начать выполнение программы «по шагам». При этом на экране появится подсветка, которая при нажатии F7 или F8 будет перемещаться от оператора к оператору в той же последовательности, как если бы программа выполнялась в режиме счета. Отличие клавиш F7 и F8 заключается в том, что при нажатии F7 будет выполнятся трассировка процедур и функций, а при F8 вызовы процедур и функций выполняются как один шаг.
Если требуется пропустить выполнение циклов и других малоинтересных частей программы и сразу перейти к той строке, где вы хотите начать отладку, то необходимо подвести курсор в эту строку и нажать F4.
Точки останова.Отдельные строки программы можно пометить как точки останова. Когда вы запускаете программу, и она попадает в точку останова, ее выполнение приостанавливается, и на экран выводится текст программы в точке останова. При этом вы можете проверить значение переменных, начать трассировку (F7, F8) или запустить программу, пока она не достигнет следующей точки останова (Ctrl – F9).
Чтобы установить (или убрать) точку останова, требуется подвести курсор в требуемую строку и нажать Ctrl – F8.Установить точку останова можно также, вызвав функцию Debug/Add Breakpoint. При этом в «диалоговом» окне требуется указать в строке Condition – логическое выражение – условие остановки (используется при отладке циклов Repeat Until и While Do), Path count – число, сколько раз будет пропущена точка останова перед остановкой на ней (используется при отладке цикла For), File name – имя файла, в котором поставлена строка останова, Line number – номер строки. Работать с уже установленными точками останова можно используя функцию меню Debug/Breakpoints. При этом в появившемся «диалоговом» окне можно, используя клавиши со стрелками, выбрать необходимую точку останова и, вызывая функции кнопок:
– изменить параметры точки останова (кнопка Edit);
– удалить точку останова (кнопка Delete или клавиша Del);
– перейти на выбранную точку останова (кнопка View);
– удалить все точки останова (кнопка Clear all).
В добавление к использованию в программе точек останова работающую программу в любой момент можно приостановить либо остановить, нажав Ctrl – Break. Как правило, однократное нажатие Ctrl – Break приводит к приостановке программы с возможностью дальнейшей отладки, а двукратное – к остановке.
Окно просмотра.Турбо – Паскаль дает программисту возможность во время отладки просматривать и изменять текущие значения переменных. Для просмотра переменных служит окно просмотра.
Окно просмотра можно открыть двумя способами: вызовом функции меню Debug/Watch или первым добавлением переменной, структуры данных или выражения в окно просмотра. При этом окно просмотра помещается в нижней части экрана, и его размеры и положение на экране можно изменить, используя клавиши работы с окнами.
Добавление переменных, структур данных и выражений может быть осуществлено нажатием Ctrl – F7 (или вызовом функции меню Debug/Add watch).
При этом появится «диалоговое» окно. Необходимый текст можно ввести с клавиатуры или, нажав ¯, выбрать его из списка. Также для ускорения добавления можно подвести курсор на необходимую переменную в редакторе, нажать Ctrl – F7 и, если не весь требуемый текст появился в окне, нажимая Ô, добиться появления всего текста.
Добавленные переменные, структуры данных и выражения могут быть изменены или удалены. Для этого необходимо войти в окно просмотра, выбрать, используя клавиши со стрелками, требуемую строку и для изменения нажать на Enter или для удаления – на Del.
Кроме окна просмотра в отладчике можно использовать специальные окна.
Окно «стек вызова» (функция Debug/Call Stack или Ctrl – F3).При каждом вызове процедуры или функции Турбо – Паскаль запоминает вызов и передаваемые ей параметры. Когда вы выходите из этой процедуры или функции, то Паскаль про этот вызов «забывает». Это называется стеком вызова. Используя окно «стек вызова», можно просмотреть список вызовов процедур и функций и переданные им фактические параметры. Окно «стек вызова» несет также другую важную функцию: оно позволяет выполнять обратный просмотр последовательности вызовов. Когда на экране появится стек вызова, самый верхний вызов подсвечивается. Для перемещения вверх и вниз по стеку можно использовать клавиши передвижения курсора. Если вы нажмете клавишу Enter, то переместитесь к последней активной точке в программе или подпрограмме.
Окно просмотра (функция Debug/Output) позволяет просматривать всю информацию, выводимую программой на экран.
Завершение сеанса отладки осуществляется нажатием Ctrl – F2 (функция Run/Program Reset).С другой стороны, если вы во время отладки модифицировали какую–либо часть программы, то при нажатии одной из клавиш выполнения: F7, F8, Ctrl – F9 и т.д. – вы получите сообщение:
«Source modified, rebuild? (Y/N)»
«Исходный код изменен, сформировать заново?».
Если вы нажмете Y (да), то Турбо – Паскаль выполнит повторное создание вашей программы и начнет отладку сначала. Если вы нажмете N (нет), то Турбо – Паскаль, предполагая, что вы знаете, что делаете, продолжит сеанс отладки (изменения не будут учтены).
4. ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ТУРБО–ПАСКАЛЬ