function str = ctext(z)
% convert a complex number to a string

zt = 1e-10*abs(z);
zi = abs(imag(z));
sign = imag(z)>0;
if (abs(zi-1.0)<1e-10)
    stri = 'j';
else
    stri = sprintf('%gj',zi);
end
if (isreal(z))
    str = sprintf('%g ',z);
elseif (zi<zt)
    str = sprintf('%g ',real(z));
elseif (abs(real(z))<zt)
        if (sign)
            str = stri;
        else
            str = sprintf('-%s ',stri);
        end
elseif (sign)
    str = sprintf('%g + %s ',real(z),stri);
else
    str = sprintf('%g - %s ',real(z),stri);
end