This is test.c in view mode; [Download] [Up]
#include <math.h>
#include </musr/H/complexf.h>
main()
{
complex a,b,c,dummy,xcmplx(),cexp(),divide();
/*cmplx(0.,-1.,a);
b = a * c;
multiply(a,xcmplx(c,0.),b);
b = cexp(a);
prtcmplx(b);
cmplx(2.,0.,a);
multiply(a,b,c);
prtcmplx(c);
cmplx(3.,0.,a);
cmplx(4.,0.,b);
multiply(a,b,c);
prtcmplx(c);*/
cmplx(1,-2,a); cmplx(3,-4,b); c=divide(a,b); prtcmplx(c);
}
complex xcmplx(a,b)
float a,b;
{
complex c;
cmplx(a,b,c);
return(c);
}
complex cexp(a)
complex a;
{
complex b;
b.re = exp(a.re) * cos(a.im);
b.im = exp(a.im) * sin(a.im);
return(b);
}
complex divide(a,b)
complex a,b;
{
complex c,d,e,f;
conjugate(b,c);
multiply(a,c,d);
multiply(b,c,e);
f.re = d.re/e.re;
f.im = d.im/e.re;
/*prtcmplx(a); prtcmplx(b); prtcmplx(c); prtcmplx(d); prtcmplx(e); prtcmplx(f);*/
}
complex mult(a,b)
complex a,b;
{
complex c;
c.re = a.re * b.re - a.im * b.im;
c.im = a.re * b.im + a.im * b.re
return(c);
}
complex add(x,y)
complex x,y;
{
complex z;
z.re = x.re + y.re;
z.im = x.im + y.im;
return(z);
}
complex subtract(x,y)
complex x,y;
{
complex z;
z.re = x.re - y.re;
z.im = x.im - y.im;
return(z);
}
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.