Система программирования Turbo Pascal



   info               


Доступ к объявленным в модуле объектам



Доступ к объявленным в модуле объектам


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

UNIT Cmplx;

{---------------------}

INTERFACE

{---------------------}

type complex = record

re, im:real

end;

Procedure AddC

(x, у

: complex;

var z

: complex) ;

Procedure SubC

(x, у

: complex;

var z

: complex) ;

Procedure MulC

(x, у

: complex;

var z

: complex) ;

Procedure DivC

(x, у

: complex;

var z

: complex) ;

const

с : complex =

(re :

0.1; im :

-1);

 

{---------------------}

IMPLEMENTATION

{---------------------}

Procedure AddC; begin

z.re := x.re + y.re; z . im := x.im + y. im

end {AddC};

Procedure SubC;

begin

z.re := x.re - y. re ; 

z.im := x.im - y.im

end {SubC};

Procedure MulC;

begin

z.re := x.re*y.re - x.im*y. im;

z.im := x.re*у.im + x.im*y.re

end {MulC};

Procedure DivC;

var

zz : real;

begin

zz := sqr(y.re) + sqr(y.im); 

z. re := (x.re * y.re + x.im * y.im) / zz; 

z.im := (x.re * y.im - x.im * y.re) / zz

end {DivC};

end.

Текст этого модуля следует поместить в файл CMPLX.PAS. Вы можете его откомпилировать, создав TPU-файл, после чего Вашей программе станут доступны процедуры из новой библиотеки. Например, в следующей программе (пример 9.1) осуществляются четыре арифметические операции над парой комплексных чисел.









Содержание  Назад  Вперед