|
Текст подпрограммы и версий pa05r_p.zip pa05e_p.zip |
Тексты тестовых примеров tpa05r_p.zip tpa05e_p.zip |
Вычисление натурального логарифма от комплексного числа.
PA05R вычисляет значение функции ln z, где z = XR + XI i - заданное комплексное число.
procedure PA05R(XR :Real; XI :Real; var YR :Real; var YI :Real);
Параметры
| XR, XI - | действительная и мнимая части заданного комплексного числа (тип: вещественный); |
| YR, YI - | вещественные переменные, значения которых полагаются равными действительной и мнимой части результата. |
Версии
| PA05E - | вычисление натурального логарифма от комплексного числа в режиме расширенной (Extended) точности. При этом параметры XR, XI, YR, YI должны иметь тип Extended. |
Вызываемые подпрограммы
| PA02R - | вычисление модуля комплексного числа; используется в подпрограмме PA05R. |
| PA02E - | вычисление модуля комплексного числа в режиме расширенной (Extended) точности; используется в подпрограмме PA05E. |
Замечания по использованию: нет
Unit TPA05R_p;
interface
uses
SysUtils, Math, { Delphi }
Lstruct, Lfunc, UtRes_p, PA05R_p;
function TPA05R: String;
implementation
function TPA05R: String;
var
YR,YI,XR,XI :Real;
RES :Complex;
BЕGin
Result := ''; { результат функции }
XR := -3.0;
XI := 3.0;
PA05R(XR,XI,YR,YI);
RES := Clog(Cmplx(-3.0,3.0));
Result := Result + Format(' %20.16f %20.16f ',[YR,YI]) + #$0D#$0A;
Result := Result + Format('%20.16f %20.16f ',[RES.re,RES.im]) + #$0D#$0A;
UtRes('TPA05R',Result); { вывод результатов в файл TPA05R.res }
exit;
end;
end.
Результаты: YR = 1.445186 , YI = 2.356194