Пример класса "Комплексные числа"

Пример был взят из учебника Free Pascal и Lazarus (Е.Р. Алексеев, О.В. Чеснокова, Т.В. Кучер), где он описан для среды Lazarus и с графическим интерфейсом.

Здесь приводится для IDE Free Pascal.

Вариант без параметров:

{$mode objfpc}
 
uses Classes;
 
type TComplex = class(TObject)
    private
        x,y: real;
    public
        constructor Create;
        function Modul(): real;
        function Argument(): real;
        //function ComplexToStr(): string;
end;
 
constructor TComplex.Create;
    begin
        x := 0; y := 0;
        inherited Create;
    end;
function TComplex.Modul(): real;
    begin
        Modul := sqrt(x*x + y*y);
    end;
function TComplex.Argument(): real;
    begin
        Argument := arctan(y/x)*180/PI;
    end;
 
var num: TComplex;
 
begin
    num := TComplex.Create;
    write('num.x := '); readln(num.x);
    write('num.y := '); readln(num.y);
    writeln('Modulus of the num: ', num.Modul():10:3);
    writeln('Argument of the num: ', num.Argument():9:3);
 
readln;
end.

С параметрами:

...
 
type TComplex = class(TObject)
    private
        x,y: real;
    public
        constructor Create(a,b: real);
        ...
end;
 
constructor TComplex.Create(a,b: real);
    begin
        x := a; y := b;
        inherited Create;
    end;
...
 
var num: TComplex;
    x,y: real;
 
begin
    write('x := '); readln(x);
    write('y := '); readln(y);
    num := TComplex.Create(x,y);
 
    ...

Добавить комментарий