Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебники 6034.doc
Скачиваний:
4
Добавлен:
01.05.2022
Размер:
238.08 Кб
Скачать

1.2. Структура программ на Паскале

В общем виде структура программы на Паскале содержит следующие разделы:

- заголовок программы program Х;

- раздел объявления меток label;

- раздел объявления констант const;

- раздел объявления типов type;

- раздел объявления переменных var;

- раздел объявления процедур procedure;

- раздел объявления функций function;

- тело программы – раздел операторов (обязательная часть).

Заголовок программы состоит из зарезервированного слова program и имени программы (со списком параметров, заключенных в круглые скобки). Завершается заголовок точкой с запятой. Он не является обязательным и игнорируется компилятором.

Блок, состоящий из объявлений меток, констант, типов, переменных, процедур и функций составляет декларативную часть. В ней перечисляются имена всех объектов, встречающихся в программе, и для каждого указывается, что он собой представляет и как с ним нужно обращаться. Разделы друг от друга отделяются точкой с запятой. Некоторые из разделов или все разделы декларативной части можно опустить (так, раздел label присутствует, если в программе имеются операторы перехода; в разделе const вводятся синонимы для констант; раздел type нужен тогда, когда в программе используются нестандартные типы данных и т.д.). Порядок следования разделов произвольный и более того, они могут встречаться сколько угодно раз. Объявление имени объекта должно предшествовать его использованию.

Раздел операторов является исполняемой частью блока. Без него блок не имеет смысла. В структурированной программе он, как правило, выполняет управленческие (диспетчерские) функции. В нем, кроме ввода данных и вывода результатов, содержатся вызовы подпрограмм. Связь по данным между подпрограммами реализуется путем передачи значений и возврата результатов. Синтаксически этот раздел представляет собой составной оператор, за которым следует точка.

Для вызова Паскаля необходимо запустить файл TPW.EXE. Этот файл содержит готовую к работе диалоговую систему программирования, в которую входят самые необходимые части Турбо Паскаля (текстовый редактор, компилятор, компоновщик, загрузчик). Диалоговое окно представлено на рис.1.

Рис. 1. Диалоговое окно

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

- группы File используются для выполнения действий с файлами;

- группы Compile - для компиляции исходной программы в выпол­няемую;

- группы Options - для настройки среды программирования.

Выбрать нужную команду можно при помощи клавиатуры или мышки. Чтобы выбрать и выполнить нужную команду при помощи клавиатуры, необходимо:

- нажать клавишу < F10 > (в результате один из пунктов меню будет выделен цветом);

- используя клавиши перемещения курсора влево и вправо, выделить название нужного пункта меню и нажать клавишу <Enter> (в результате этого появится список команд выбранного пункта меню);

- используя клавиши перемещения курсора вверх и вниз, выделить название нужной команды и нажать клавишу <Enter>.

Чтобы выбрать и выполнить нужную команду при помощи мышки, необходимо:

  • установить указатель мышки на название нужного пункта меню и щелкнуть (нажать и отпустить) левой кнопкой мышки (появится список ко­манд выбранного пункта меню);

  • установить указатель мышки на название нужной команды и щелкнуть левой кнопкой мышки.

Остальная часть экрана принадлежит окну редактора, предназначенному для ввода и коррекции текстов программ. В верхней строке приводятся имя того файла, откуда был прочитан текст программы (новому файлу присваивается имя NONAME00.PAS). В Паскале можно работать одновременно с несколькими программами, каждая из которых располагается в отдельном окне. Кроме окна редактора в Паскале используются также окна отладочного режима, вывода результатов работы программы, справочной службы, стека и регистров.

Для управления средой Паскаля можно использовать функциональные клавиши. Они обозначаются F1, F2, ..., F12 и располагаются в верхнем ряду клавиатуры. С каждой из этих клавиш связывается некоторая команда меню. Действие функциональных клавиш можно модифицировать клавишами Alt, Ctrl и Shift – нужно нажать на одну из них и затем, не отпуская ее, нажать функциональную клавишу. В дальнейшем такое совместное нажатие двух клавиш будем обозначать чертой. Например, Alt-F3 означает, что вместе с клавишей Alt необходимо нажать клавишу F3.

В табл.3. приводятся команды, которые передаются среде Паскаля функциональными клавишами.

Таблица 3

Комбинация клавиш

Действия

F1

Помощь

Ctrl + Fl

Помощь к слову, на котором стоит курсор

F2

Сохранение файла в текущем окне

Shift+ F2

Сохранение с другим именем

F3

Открытие файла

F5

Распахнуть/свернуть окошко

Alt + F5

Переключение в пользовательский экран

F7

Выполнение шага трассировки (с заходом в процедуры)

Ctrl + F7

Добавление переменной в окно Watch - просмотра текущих значений переменных

F8

Выполнение шага трассировки (или функции/процедуры целиком)

Ctrl + F8

Поставить/удалить точку останова

F9

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

Ctrl + F9

Запуск программы с предварительной компиляцией (при необходимости)

F10

Обращение к меню IDE

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

Рассмотрим основные приемы работы с текстовым редактором. Для создания программы нужно ввести текст с помощью клавиатуры в окне редактора. Редактор имитирует работу с листом бумаги. Размеры листа ограничены: общее число символов не более 64535, длина строки не более 126 символов. Клавишами перевода курсора его можно смещать по экрану.

Окно можно смещать относительно листа с помощью следующих клавиш:

Page Up – на страницу вверх;

Page Down – на страницу вниз;

Ноте – в начало текущей строки;

End – в конец текущей строки;

Ctrl-Page Up – в начало текста;

Ctrl-Page Down – в конец текста.

Если Вы ошиблись при вводе очередного символа, его можно стереть с помощью клавиши Backspace. Клавиша Delete стирает символ, на который в данный момент указывает курсор, а команда Ctrl-Y – всю строку, на которой расположен курсор.

Нормальный режим работы редактора – режим вставки. Редактор может также работать в режиме замещения: в этом режиме новый символ заменяет собой тот символ, на который указывает курсор. Для перехода к режиму замещения нужно нажать клавишу Insert, а если нажать эту клавишу еще раз, вновь устанавливается режим вставки.

Чтобы приступить к набору текста новой программы, надо из меню File (файл) выбрать команду New (новый) (рис. 2). В результате будет открыто новое окно редактора текстов. Если исходная программа находится на диске, то для того, чтобы с ней работать, надо загрузить в редактор текста файл, в котором эта программа на­ходится. Для этого надо из меню File выбрать команду Open.

Рис. 2. Команды меню File

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

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

Доступ к справочной службе можно получить с помощью следующих клавиш:

F1 – получение справки;

Shift-F1 – выбор справки из списка сообщений;

Ctrl-F1 – получение справки о стандартной функции, константе или переменной.

По команде Shift-F1 на экране появится окно, содержащее упорядоченный по алфавиту список стандартных процедур, функций, типов, констант и переменных, для которых можно получить справочную информацию. Если подвести курсор к имеющемуся в тексте стандартному имени и нажать Ctrl-F1, среда выделит имя и даст нужную справку.

После подготовки текста программы можно попытаться исполнить ее, т.е. откомпилировать программу, связать ее с библиотекой стандартных процедур и функций, загрузить в оперативную память и передать ей управление. Вся эта последовательность действий называется прогоном программы и реализуется командой Compile (Alt-F9).

Если в тексте программы компилятор не нашел синтаксических ошибок, то генерируется исполняемый файл про­граммы. При компиляции на диск компилятор создает выполняемую программу и записывает ее на диск, в файл с расширением ЕХЕ. Таким образом, созданная компилятором программа может быть загружена в память компьютера и вы­полнена позже, но уже без использования среды программирования. Файлу выполняемой программы автоматически присваивается такое же имя, как и у файла исходного текста программы, но расширение PAS заменяется на ЕХЕ. Файл выполняемой программы создается в каталоге, имя которого было задано при настройке среды программирования.

Во время компиляции текст программы проверяется на отсутствие син­таксических ошибок. После исправления ошибки можно повторить компиля­цию. Таким образом, исправляя обнаруживаемые компилятором ошибки и повторно проводя компиляцию, можно устранить все синтаксические ошибки в тексте программы. В табл.4 приведены сообщения о наиболее типич­ных ошибках.

Таблица 4

Сообщение компилятора

Вероятная причина

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

Используется переменная, не объявленная в разделе var программы; ошибка при написании имени объявлен­ной переменной. Например, в разделе var объявлена пере­менная Summa, а в тексте программы написано Suma: = .... Ошибка при написании имени инструкции, например: вместо write написано wirte

8: String constant exceeds line, (строковая константа превышает допустимую длину)

При записи строковой константы не поставлена за­вершающая кавычка, например: в операторе write('ценa с учетом скидки, Сеnа) после последнего символа сообще­ния не поставлен завершающий апостроф

26: Type mismatch, (несоответствие типов)

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

85:";" expected, (ожидается символ «точка с запятой»)

Не поставлен символ «точка с запятой» после инст­рукции

Продолжение табл.4

Сообщение компилятора

Вероятная причина

113: Error in statment. (ошибка в выражении)

Неверный синтаксис оператора, например: поставлен символ «точка с запятой» перед else условной инструкции if

10: Unexpected end of file, (he найден конец файла)

Нет символа «точка» после последнего слова end про­граммы; в конце программы нет слова end, за которым следует символ «точка»

Если компиляция программы завершена успешно, то можно выполнить пробный запуск выполняемой программы. Перед пробным запуском про­граммы сохраните текст исходной программы в файле.

Чтобы запустить на выполнение программу, текст которой находится в окне редактирования, надо из меню Run (выполнить) выбрать команду Run.

В результате запуска программы с экрана исчезает окно Turbo Pascal и по­является так называемое окно пользователя. В это окно программа выдает со­общения (результат выполнения инструкций Write и WriteLn), из этого окна она получает от пользователя необходимые данные (инструкции Read и ReadLn). По завершении работы запущенной программы вновь появляется главное окно Turbo Pascal.

Отсутствие в тексте программы синтаксических ошибок и генерация компилятором исполняемого файла программы не являются гарантией отсут­ствия ошибок в программе. Ошибки в программе могут проявляться во время ее работы. Такие ошибки называются ошибками времени выполнения про­граммы (runtime error). Причиной ошибок времени выполнения являются, как правило, ошибки в логике алгоритма, положенного в основу программы, или неверные исходные (входные) данные.

В случае возникновения ошибки времени выполнения программа завер­шает работу и на экран выдается сообщение об ошибке. Например, если в программе пересчета расстояния из миль в километры расстояние в милях ввести не числом, а, к примеру, словом «полтора», то произойдет ошибка и на экран будет выведено сообщение типа «Runtime error 106 at..».

В таблице 5 приведены типичные сообщения об ошибках времени выполнения программы с пояснениями возможных причин.

Таблица 5

Сообщение об ошибке

Описание

Вероятная причина

Runtime error 106 at...

Invalid numeric format, (неверный числовой формат)

Программа ожидает ввода числа ти­па integer, однако введено число в форма­те real или строка, не являющаяся числом Программа ожидает ввода числа в формате real, однако введена строка, не являющаяся числом

Runtime error 200 at...

Division by zero (деление на ноль)

Второй операнд (делитель) операто­ра деления в процессе выполнения про­граммы стал равен нулю

Чтобы завершить работу со средой программирования Turbo Pascal, нужно из меню File (файл) выбрать команду Exit (выход).

Рассмотрим пример программы на языке Паскаль, вычисляющую сумму двух целых чисел. Как отмечалось, она состоит из заголовка, разделов описаний и раздела операторов.

Рис.3. Пример программы на Паскале

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