Текст подпрограммы и версий pa03r_c.zip pa03d_c.zip |
Тексты тестовых примеров tpa03r_c.zip tpa03d_c.zip |
Вычисление квадратного корня из комплексного числа.
pa03r_c вычисляет квадратный корень из комплексного числа y = XR + XI i .
int pa03r_c (real *xr, real *xi, real *yr, real *yi)
Параметры
xr, xi - | действительная и мнимая часть заданного комплексного числа (тип: вещественный); |
yr, yi - | вещественные переменные, значения которых полагаются равными действительной и мнимой части результата. |
Версии
pa03d_c - | вычисление квадратного корня из комплексного числа в режиме удвоенной точности. При этом параметры xr, xi, yr и yi должны иметь тип double. |
Вызываемые подпрограммы
pa02r_c - | вычисление модуля комплексного числа; используется в подпрограмме pa03r_c. |
pa02d_c - | вычисление модуля комплексного числа в режиме удвоенной точности; используется в подпрограмме pa03d_c. |
Замечания по использованию: нет
int main(void) { /* System generated locals */ complex q__1; /* Builtin functions */ void c_sqrt(complex *, complex *); /* Local variables */ extern int pa03r_c(float *, float *, float *, float *); static float xi, yi, xr, yr; static complex res; xr = 16.f; xi = 0.f; pa03r_c(&xr, &xi, &yr, &yi); c_sqrt(&q__1, &c_b1); res.r = q__1.r, res.i = q__1.i; printf("\n %13.3e %13.3e \n", yr, yi); printf("\n %13.3e %13.3e \n", res.r, res.i); return 0; } /* main */ Результаты: yr = 4.0 , yi = 0.0