comparison vx.h @ 0:e0bbaa717f41 draft default tip

lol J
author Jordi Gutiérrez Hermoso <jordigh@octave.org>
date Mon, 25 Nov 2013 11:56:30 -0500
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:e0bbaa717f41
1 /* Copyright 1990-2011, Jsoftware Inc. All rights reserved. */
2 /* License in license.txt. */
3 /* */
4 /* Extended Precision */
5
6 #if SY_64
7 #define XIDIG 5 /* max # x digits in an integer */
8 #else
9 #define XIDIG 3
10 #endif
11
12 #define XBASE (I)10000
13 #define XBASEN (I)4
14 #define XPINF (I)99999
15 #define XNINF (I)-99999
16 #define XF1(f) X f(J jt, X w)
17 #define XF2(f) X f(J jt,X a,X w)
18 #define XDIG(a) (*(AV(a)+AN(a)-1)) /* leading digit */
19 #define XMAX(x,y) (1==xcompare(x,y)?x:y)
20 #define XMIN(x,y) (1==xcompare(x,y)?y:x)
21 #define XDIV(x,y) xdiv(x,y,jt->xmode)
22 #define XCUBE(x) xtymes(x,xtymes(x,x))
23
24
25
26 /* values for jt->xmode */
27
28 #define XMFLR 0 /* floor, round down */
29 #define XMCEIL 1 /* ceiling, round up */
30 #define XMEXACT 2 /* exact, error if impossible */
31 #define XMEXMT 3 /* exact, empty if impossible */
32 #define XMRND 4 /* round, round to nearest */
33
34
35 extern XF1(jtxfact);
36 extern XF1(jtxsgn);
37 extern XF1(jtxsq);
38 extern XF1(jtxsqrt);
39 extern XF1(jtxstd);
40
41 extern XF2(jtxbin);
42 extern XF2(jtxgcd);
43 extern XF2(jtxlcm);
44 extern XF2(jtxminus);
45 extern XF2(jtxplus);
46 extern XF2(jtxpow);
47 extern XF2(jtxtymes);
48
49 extern X jtxc(J,I);
50 extern int jtxcompare(J,X,X);
51 extern X jtxdiv(J,X,X,I);
52 extern B jtxdivrem(J,X,X,X*,X*);
53 extern X jtxev1(J,A,C*);
54 extern X jtxev2(J,A,A,C*);
55 extern I jtxint(J,X);
56 extern D jtxlogabs(J,X);
57 extern X jtxrem(J,X,X);