Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

LR_71_obolo4ka_1260

.pdf
Скачиваний:
13
Добавлен:
06.02.2016
Размер:
314.12 Кб
Скачать

Окна меню вызываются из основного меню или соответствующих подменю, а локальное меню - комбинацией “горячих” клавиш Alt+F10 .

5 РАЗРАБОТКА ПРОГРАММ В ИНТЕГРИРОВАННОЙ СРЕДЕ

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

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

Начинается работа в среде с написания текста программы в окне редактирования с помощью редактора среды.

Следующим этапом является компиляция текста в машинный код. Эта операция осуществляется встроенным компилятором среды.

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

Следующим важным этапом создания программы является ее отладка. Как правило, написанная программа требует отладки, т.к. на первых этапах разработки обычно допускаются различные ошибки.

Наконец, последний этап - запуск отлаженной программы.

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

5.1 Составление программы

Нажмите F10, чтобы войти в полосу меню, а затем F3 (сокращение для выбора File/Open) для показа диалогового окна Open и File . Вы находитесь в окне ввода, поэтому наберите MYFIRST (необязательно набирать расширение . PAS ; это предполагается и так) и нажмите Enter . Теперь можно приступить к вводу текста программы, нажимая Enter в конце каждой строки:

21

program MyFipst; var

A, B: integer;

Ratio: real; begin

Write (‘Введите два числа: ‘); Readln (A, B);

Ratio := A/B;

Writeln (‘ Ratio =’, Ratio); Write (‘Нажми <Enter>...’); Readln;

end.

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

Следующие три строки объявляют несколько переменных со словом var, говорящем о начале объявления переменных. A и B имеют тип Integer (целое число); то есть, они могут содержать целые числа, такие как 52, -421, 0, 32, 283 и так далее. Ratio объявлено как Real (действительное число), это означает, что она может хранить дробные числа, такие как 423.328 и -0.032, в добавление к целым числам.

Остальная часть программы содержит выполняемые утверждения. Слово begin говорит о начале программы. Утверждения разделяются точкой с запятой и содержат инструкции записи на экран (Write и Writeln), чтения с клавиатуры (Readln) и выполнения вычислений (Ratio:=A/B). Readln в конце программы приводит к остановке выполнения (пока Вы не нажмете Enter), так что Вы сможете исследовать вывод программы. Выполнение программы начинается с первой инструкции после begin и продолжается до тех пор, пока не встретится end.

5.2 Сохранение программы

После введения Вашей первой программы ее целесообразно сохранить на диске. Для этого выберите команду Save из меню File ,нажав F10, затем F для появления меню File и S для выбора команды Save. Наиболее легкий способиспользуйте сокращение для File/Save или F2.

22

5.3 Компиляция программы

Для компиляции своей первой программы идите к опции Compile в основном меню. Можно нажать F10C, а Alt+C приведет Вас прямо к этой опции. Использование же “горячих” клавиш Alt+F9 - это самый быстрый путь.

Turbo Pascal компилирует Вашу программу, преобразуя исходный текст (который можно читать) в машинный код для микропроцессора (который может выполнить Ваша ПЭВМ). Вы не увидите машинный код; он хранится в памяти (или на диске).

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

Какие ошибки компиляции вероятнее всего Вы получите? Наиболее возможной ошибкой для начинающего программиста на языке Паскаль будет:

Unknown identifier (неизвестный идентификатор) или

‘;’ expected

(ожидается ‘;’)

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

Паскаль требует, чтобы Вы объявили все переменные, типы данных, константы и подпрограммы - короче, все идентификаторыперед их использованием. Если Вы обратитесь к необъявленному идентификатору или пропустите его, то получите ошибку. Другой частной ошибкой является несоответствие пар begin...end, присваивание несовместимым типам дан-

ных (например, присваивание действительного числа целому), число и тип параметров не соответствуют в вызовах процедур и функций и т.д.

Когда Вы начинаете компиляцию, в центре экрана появляется окно, содержащее ин-

формацию о данной компиляции. Если во время компиляции не произошло никаких ошибок,

то в этом окне появится сообщение “ Compilation successful: press any key “ (компиляция успешна: нажмите любую клавишу). Окно остается на экране до тех пор, пока Вы не нажме-

те клавишу.

23

Если во время компиляции произошла ошибка, Turbo Pascal останавливается, уста-

навливает курсор на ошибку в редакторе и показывает сообщение об ошибке вверху редактора. (Первое нажатие клавиши очистит это сообщение, а

Ctrl+Q W будет показывать его снова до тех пор, пока Вы не измените файл или не пере-

компилируете его). Сделайте исправления, сохраните обновленный файл и компилируйте снова. На рис. 1.7 показан экран с указанной ошибкой.

Рис. 5.1 Сообщение об ошибке при компиляции программы

5.4 Выполнение программы

После фиксации ошибок идите в основное меню и выберите Run/Run (или нажмите Ctrl+F9). Вы находитесь на экране пользователя, и на этом экране появится сообщение:

Введите два числа:

Наберите два любых целых числа с пробелом между ними и нажмите Enter. Появится следующее сообщение:

Ratio=,

а за нимотношение первого числа ко второму. В следующей строке появится сообщение “Press<Enter>...”, а программа будет ждать нажатия клавиши Enter. Чтобы посмотреть выбор своей программы, выберите Window/User Screen (или нажмите Alt+F5). На рис.8 показан экран пользователя.

24

Turbo Paskal Version 7.0 Copyright (1983, 95) Borland International

Введите два числа: 23 32 Ratio= 71875000000E-01 Нажми<Enter>…

Рис. 5.2 Экран среды при выполнении программы.

Если во время выполнения программы произошла ошибка, то на экране появится со-

общение, которое выглядит следующим образом: Runtime error <errnum> at <segment>: <offset>

где <errnum>- это соответствующий номер ошибки; <segment> : <offset> - это ад-

рес в памяти, где произошла ошибка. (Если Вы хотите вернуться к этой ошибке позднее,

ищите ее в окне Output ). Вы окажитесь в точке расположения ошибки в своей программе с описательным сообщением об ошибке, показанным в строке статуса редактора. Пока сооб-

щение находится в строке статуса редактора, можно нажать F1 для получения справочной информации по конкретной ошибке. Нажатие любой другой клавиши приводит к исчезнове-

нию сообщения об ошибке. Если Вам нужно будет найти место расположение ошибки снова,

выберите Search/Find Error.

5.5 Отладка программы

Для примера внесем изменения в предыдущий пример и составим новую программу: program MySecond;

var

A,B: integer;

Ratio: real; begin

repeat

Write (‘Введите два числа: ‘); Readln (A, B); Ratio := A/B; Writeln (‘Ratio = ‘,Ratio:8:2); Write (‘Нажми <Enter> ...’); Readln;

until B=0; end.

25

Компилируйте и запускайте свою вторую программу, используя Ctrl+ F9. Turbo Pascal выполнит Вашу обновленную программу. Поскольку Вы делали изменения в программе, Turbo Pascal автоматически откомпилирует программу перед ее запуском.

В программе были сделаны большие изменения. Утверждения были заключены в цикл repeat...until . Это приведет к тому, что все утверждения между repeat и until будут выполняться до тех пор, пока выражение, следующее за until, не станет True (истинно). Это выражение проверяет, равно ли значение B нулю или нет. Если B имеет значение 0, цикл должен завершаться.

Запустите свою программу, проверьте некоторые значения, а затем введите 1 0 и нажмите Enter . Ваша программа прекратит работу, но не совсем так, как Вы предполагали: она завершится с ошибкой времени выполнения. Вы вернетесь обратно в редактор, а курсор будет стоять на строке:

Ratio :=A/B;

а наверху окна редактора появится сообщение: Error 200: Division by zero

(ошибка 200: деление на 0)

Интегрированный отладчик Turbo Pascal позволит Вам передвигаться по своему коду по строкам. В то же время, Вы можете просматривать переменные: как изменяются их значения.

Чтобы начать сеанс отладки, выберите команду Run/Trace Into (или нажмите F7). Если Ваша программа нуждается в компиляции, Turbo Pascal сделает это. Первое утверждение (в данном случае begin) в теле Вашей программы будет высвечено; с этого момента мы будем называть эту высвеченную полосу «полосой запуска».

Первое нажатие клавиши F7 инициализирует сеанс отладки. Теперь нажмите F7, чтобы начать выполнение программы. Отладчик выполнит невидимый код запуска. Следующая выполнимая строка в этой программе - утверждение Write в строке 7.

Нажмите F7 снова. На этот раз появится экран пользователя и останется. Это произойдет потому, что утверждение Readln ожидает ввода двух чисел. Наберите два целых числа, разделенные пробелом; убедитесь, что второе числоне нуль. Теперь нажмите Enter. Вы вернетесь назад в окно редактора, с полосой запуска на утверждении присваивания в строке 9.

Нажмите F7 и выполните утверждение присваивания. Теперь полоса запуска находится на утверждении Writeln в строке 10. Нажмите F7 дважды. Теперь Вы должны выполнить Readln в строке 12. Нажмите F7, посмотрите вывод своей программы и затем нажмите

26

Enter.

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

Вместо прохождения по программе по принципу “утверждение - за - утверждением”, интегрированный отладчик позволяет делать шаги по коду “одна строка за один раз”.

5.6 Использование окна Watch

Давайте посмотрим на значение объявленных переменных. Нажмите Alt+D для появления меню Debug. Выберите команду Add Watch из меню Watches (или нажмите Ctrl+F7). Наберите A в окне ввода Watch Expession и нажмите Enter. A появится в окне Watch вместе со своим текущим значением. Теперь используйте команду Add Watch для добавления B и Ratio в окно Watch. Наконец, используйте ее для добавления выражения A/B в окно Watch. На рис. 9 показано окно отладки Watch.

Выберите Run/Trace Into (или нажмите F7) для того, чтобы сделать шаг в своей программе. На этот раз, когда Вы должны ввести два числа, введите 0 для второго числа. Когда Вы нажмете Enter и вернетесь в IDE, посмотрите на выражение A/B в окне Watch (нажмите Alt и # (номер) окна или Alt+W W) Вместо этого значения будет стоять фраза “Invalid

Рис.5.3. Окно отладки

27

floating-point operation” (неправильная операция над числами с плавающей точкой); это произошло потому, что деление на нуль не определено. Хотя заметим, что наличие этого выражения в окне Watch не приводит к остановке программы с ошибкой. Вместо этого выдается сообщение об ошибке, а отладчик не выполняет деление в окне Watch.

Теперь нажмите F7 снова, присваивая A/B переменной Ratio. В этой точке произойдет аварийное завершение программы, и вверху окна редактора опять появится сообщение об ошибке “Division by zero”.

6 СИСТЕМА МЕНЮ СРЕДЫ TURBO PASCAL 7.0

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

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

6.1 Основное меню Турбо-Паскаля

File Edit Search

Run

Compile

Debug Tools

Options Window

Help

Для выбора поля основного меню можно либо воспользоваться “мышью”, подведя курсор к соответствующему полю и нажав левую клавишу, либо клавишей Alt совместно с клавишей символа, выделенного в имени поля. Кроме того, основное меню можно выбрать нажатием “горячей” клавиши F10, далее соответствующее поле выбирается с помощью клавиш управления курсором. При этом в поле появляется соответствующее ниспадающее меню.

6.2 Меню работы с файлами (File)

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

28

File/New команда позволяет открыть новое окно редактора с именем по умолчанию NONAMExx.PAS . (xx - число от 00 до 99). Эти NONAME файлы используются как временные буферы редактора; Turbo Pascal предлагает назвать NONAME файл, когда Вы хотите его сохранить.

File/ Open команда(Файл/Открыть) показывает диалоговое окно с выбором программных файлов для их открытия в окне редактора. На рис. 3 было показано, как выглядит это диалоговое окно.

New

F3

Новая программа

Open

F2

Открыть новое окно для загрузки программы

Save

 

Сохранить программу в файле c расширением .pas

Save as..

 

Сохранить программу в файле c произв. расширением

Save al

 

Сохранить все программы

Change dir...

 

Изменить директорию

Print

 

Распечатать программу

Printer setup...

Установка параметров принтера

DOS shell

 

Выход в ДОС

Диалоговое окно содержит окно ввода, список файлов, кнопки, помеченные как Open (Открыть), Replace (Заменить), Cancel (Отказ) и Help (Справочная информация), и информационную панель, описывающую файл. Теперь Вы можете выполнять любое из следующих действий:

Наберите полное имя файла и выберите Replace (заменить) или Open (открыть). Open загружает файл в новое окно редактора. При выборе Replace окно редактора должно быть активным; содержимое окна заменяется выбранным файлов.

Наберите имя файла со спецификатором (знаком вопроса или звездочкой), который фильтрует список файлов в соответствии с Вашими спецификациями.

Нажмите (кнопку со стрелкой вниз или вверх) для выбора спецификации файла из архивного списка файловых спецификаций, который Вы ввели ранее.

Просмотрите содержимое различных справочников путем выбора имен справочников из списка файлов.

Окно ввода позволяет набрать точное имя файла или имя файла со стандартными спецификациями DOS (* или ?) для фильтрации имен, появляющихся в окне архивного списка. При наборе полного имени и нажатии Enter Turbo Pascal откроет его. (При введении имени файла, которое Turbo Pascal найти не может, он автоматически создает и открывает новый файл с этим именем).

29

Если Вы нажимаете (кнопку со стрелкой вниз или вверх) при мерцании курсора в окне ввода, ниже окна появится архивный список. Выбор имени осуществляется посредством двойного его отмечания или выбором с помощью клавиш со стрелками и нажатием Enter.

Как только Вы набрали или выбрали требуемый файл, отметьте кнопку Open (выберите Cancel в том случае, если Вы изменили свое решение). Также можно нажать Enter, как только файл был выбран, или можно дважды отметить имя файла.

Примечание. Если Вы выбрали Replace вместо Open, то выбранный файл заменит файл в активном окне редактора вместо открытия нового окна.

File/Save команда сохраняет файл, находящийся в активном окне редактора, на диск. (Этот элемент меню недоступен, если нет активного окна редактора). Если файл имеет имя по умолчанию ( NONAME00. PAS или подобное), Turbo Pascal откроет диалоговое окно Save File As (Сохранить файл как) для того, чтобы позволить Вам переименовать и сохранить его в текущем справочнике или на другом устройстве. Это диалоговое окно подобно окну, открывающемуся для Save As (сохранить как) команды, описанной дальше.

File/Save As команда позволяет сохранить файл, находящийся в активном окне редактора, под другим именем, в другом справочнике, на другом устройстве. После выбора этой команды можно увидеть Save File As диалоговое окно:

Рис. 6.1. Окно диалога для записи файла

30

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