Подскажите нормально ли написан класс комплексных чисел или что-то можно изменить для ускорения работы осноыной программы?
с-файл и h-файл:
Код:
#include "complex.h"
#include <math.h>
complex_t mul(complex_t x, complex_t y)
{
complex_t t;
t.a=x.a*y.a-x.b*y.b;
t.b=x.a*y.b+x.b*y.a;
return t;
}
complex_t add(complex_t x, complex_t y)
{
complex_t t;
t.a=x.a+y.a;
t.b=x.b+y.b;
return t;
}
complex_t d(complex_t x, complex_t y)
{
complex_t t;
t.a=(x.a*y.a+x.b*y.b)/(y.a*y.a+y.b*y.b);
t.b=(x.b*y.a-x.a*y.b)/(y.a*y.a+y.b*y.b);
return t;
}
void eq(complex_t *x, complex_t y)
{
x->a=y.a;
x->b=y.b;
}
complex_t neg(complex_t x)
{
complex_t t;
t.a=-x.a;
t.b=-x.b;
return t;
}
double absval(complex_t x)
{
double r;
r=sqrt((x.a)*(x.a)+(x.b)*(x.b));
return r;
}
Код:
Код:
#ifndef __COMPLEX_H__
#define __COMPLEX_H__
typedef struct
{double a,b;}
complex_t,*pcomplex_t;
complex_t mul(complex_t x, complex_t y);
complex_t add(complex_t x, complex_t y);
complex_t d(complex_t x, complex_t y);
void eq(complex_t *x, complex_t y);
complex_t neg(complex_t x);
double absval(complex_t x);
#endif