13 #include "cl_rational.h"
16 cl_signean cl_compare (const cl_R& x, const cl_R& y)
19 // Beide rational oder beide Floats -> klar.
20 // Eine rational, eine Float ->
21 // Die rationale Zahl zum Float machen, vergleichen.
22 // Verschieden -> Das war's.
23 // Gleich -> Das Float mit RATIONAL rational machen, nochmals vergleichen.
26 , // beides rationale Zahlen
27 return cl_compare(x,y);
28 , // x rational, y Float -> x in Float umwandeln
29 var cl_signean result = cl_compare(cl_float(x,y),y);
30 if (result != signean_null)
32 return cl_compare(x,rational(y));
35 , // x Float, y rational -> y in Float umwandeln
36 var cl_signean result = cl_compare(x,cl_float(y,x));
37 if (result != signean_null)
39 return cl_compare(rational(x),y);
41 return cl_compare(x,y);