Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Turbo_Pascal_lectures.doc
Скачиваний:
5
Добавлен:
23.03.2015
Размер:
190.46 Кб
Скачать
    1. Пример программы с модулем

Эта программа находит корни квадратных уравнений, коэффициенты которых вводятся с дисплея, и выводит найденные вещественные корни, либо сообщение о том, что они отсутствуют, на дисплей. После решения очередного уравнения, программа предлагает решить еще одно, или закончить счет. Программа использует процедуру, которая в самой программе не описана. Процедура реализована в подключаемом модуле. Также программа использует переменные a, b, c типа Real и переменную x типа Rdim, не описанные в программе, но описанные в модуле. Тип Rdim также сконструирован в модуле.

Текст программы.

Program SqEqSolve;

Uses Roots; {подключение модуля}

Var W:char;

Begin

Writeln('Нахождение корней квадратных уравнений');

Repeat

Write('Введите коэффициенты a, b, c через пробел');

Readln(a,b,c)

SqEqRoots(a,b,c,x)

If Error=false then

Writeln('Корни: x1=',x[1],' x2=',x[2])

else

Writeln('У этого уравнения нет вещественных

корней');

Writeln('Решить еще одно уравнение? (Y/N) >');

Readln(W)

Until (W='n') or (W='N')

End.

Текст модуля.

Unit Roots;

Interface {====раздел интерфейса=====}

Type Rdim=array[1..2] of real

Var a,b,c:real; x:Rdim;Error: Boolean;

Procedure SqEqRoots(coef1, coef2, coef3:Real;

Var Root:Rdim; Var Err:Boolean);

Implementation{====раздел реализации=====}

Procedure SqEqRoots;

Var d:real;

Begin

d:=Coef2* Coef2-4* Coef1* Coef3; {вычисление

дискриминанта}

If d>=0 then begin

d:=sqrt(d);

Root[1]:=(-Coef2-d)/(2*Coef1);

Root[2]:=(-Coef2+d)/(2*Coef1);

Err:=False

End

else Err:=true

End;

    1. Библиотеки модулей

Обычно исходные тексты модулей и откомпилированные модули хранятся в виде отдельных файлов с расширением ".tpu". В Turbo Pascal предусмотрена библиотека модулей, в которой может содержаться одновременно несколько откомпилированных модулей в виде одного файла turbo.tpl. Для управления библиотекой модулей (добавление в нее модулей и извлечение из нее модулей) предусмотрена специальная утилита-библиотекарь tpumover.exe.

  1. Стандартные модули TurboPascal

    1. Перечень стандартных модулей

В состав системы Turbo Pascal включены стандартные модули, которые являются аналогами библиотек стандартных подпрограмм.

Модуль Назначение

System Содержит самые необходимые типы, процедуры и функции, как характерные для стандартного Паскаля (такие, как функции sin, abs, odd и др.) так и дополнительные типы, процедуры и функции для работы со строками, файлами, динамической памятью, обеспечивающие работу с расширенным синтаксисом Turbo Pascal. Этот модуль не надо включать в описание Uses, так как он автоматически подключается ко всем программам и модулям.

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

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

Overlay Содержит средства для организации программ с оверлейной структурой.

Printer Содержит несколько констант и структур данных для работы с принтером.

Graph Содержит средства управлением дисплеем в графическом режиме – определение типа графического адаптера, выбор графического режима, управление цветом, рисование пикселов и геометрических фигур и т.п.

Обычно эти модули (кроме модуля Graph) включены в стандартную библиотеку turbo.tpl. Сюда же входят и некоторые другие модули, предназначенные для обеспечения совместимости исходных текстов, написанных для более ранних версий Turbo Pascal. Модуль Graph обычно хранится в отдельном файле graph.tpu, но как и другие модули, он может быть включен в библиотеку модулей turbo.tpl. Для работы модуля Graph требуются также так называемые графические драйверы, поставляемые в файлах с расширением ".bgi".

Все стандартные модули, кроме модуля System, нужно подключать к программе при необходимости с помощью описания Uses. Модуль System подключен по умолчанию.

Подробное описание состава модулей – константы, переменные, типы данных, процедуры и функции, которые можно использовать в программе в готовом виде, подключив каждый из модулей, можно найти во многих изданиях, и конечно, в документации на систему программирования и в ее справочной службе. Здесь мы ограничимся кратким рассмотрением особенностей ввода-вывода в Turbo Pascal.

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