comparison scripts/general/num2str.m @ 4918:d2a7208f35d4

[project @ 2004-07-27 15:18:04 by jwe]
author jwe
date Tue, 27 Jul 2004 15:18:04 +0000
parents 1c0442da75fd
children a1073eef650c
comparison
equal deleted inserted replaced
4917:f69e95587ba3 4918:d2a7208f35d4
42 if (iscomplex (x)) 42 if (iscomplex (x))
43 if (nargin == 2) 43 if (nargin == 2)
44 if (isstr (arg)) 44 if (isstr (arg))
45 fmt = strcat (arg, "%-+", arg(2:end), "i"); 45 fmt = strcat (arg, "%-+", arg(2:end), "i");
46 else 46 else
47 fmt = sprintf ("%%.%dg%%-+.%dgi", arg); 47 if (isnumeric (x) && round (x) == x && abs (x) < (10.^arg))
48 fmt = sprintf ("%%%dd%%-+%ddi ", arg, arg);
49 else
50 fmt = sprintf ("%%%d.%dg%%-+%d.%dgi", arg+7, arg, arg+7, arg);
51 endif
48 endif 52 endif
49 else 53 else
50 ## Setup a suitable format string 54 ## Setup a suitable format string
51 if (isnumeric (x) && round (x) == x && abs (x) < 1e10) 55 if (isnumeric (x) && round (x) == x && abs (x) < 1e10)
52 dgt1 = ceil (log10 (max (max (abs (real (x(:)))), 56 dgt1 = ceil (log10 (max (max (abs (real (x(:)))),
101 else 105 else
102 if (nargin == 2) 106 if (nargin == 2)
103 if (isstr (arg)) 107 if (isstr (arg))
104 fmt = arg; 108 fmt = arg;
105 else 109 else
106 fmt = sprintf ("%%.%dg", arg); 110 if (isnumeric (x) && round (x) == x && abs (x) < (10.^ arg))
111 fmt = sprintf ("%%%dd ", arg);
112 else
113 fmt = sprintf ("%%%d.%dg", arg+7, arg);
114 endif
107 endif 115 endif
108 else 116 else
109 if (isnumeric (x) && round (x) == x && abs (x) < 1e10) 117 if (isnumeric (x) && round (x) == x && abs (x) < 1e10)
110 if (max (abs (x(:))) == 0) 118 if (max (abs (x(:))) == 0)
111 dgt = 1; 119 dgt = 1;