version 1.4, 2019/11/12 10:53:23 |
version 1.6, 2020/02/01 14:20:42 |
|
|
* OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY |
* OF THE SOFTWARE HAS BEEN DEVELOPED BY A THIRD PARTY, THE THIRD PARTY |
* DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
* DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
* PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
* PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
* $OpenXM: OpenXM_contrib2/asir2018/io/pexpr.c,v 1.3 2019/10/17 03:03:12 kondoh Exp $ |
* $OpenXM: OpenXM_contrib2/asir2018/io/pexpr.c,v 1.5 2019/12/24 10:26:39 kondoh Exp $ |
*/ |
*/ |
#include "ca.h" |
#include "ca.h" |
#include "al.h" |
#include "al.h" |
Line 174 void printbf4itv(BF a) |
|
Line 174 void printbf4itv(BF a) |
|
int dprec; |
int dprec; |
char fbuf[BUFSIZ]; |
char fbuf[BUFSIZ]; |
char *s; |
char *s; |
dprec = (a->body->_mpfr_prec)*0.30103; |
|
if ( !dprec ) dprec = 1; |
if ( !a ) { |
dprec += 1; |
TAIL PUTS("0"); |
sprintf(fbuf,"%%.%dR%c",dprec,(double_output==1)?'f':(double_output==2)?'e':'g'); |
} |
mpfr_asprintf(&s,fbuf,a->body); |
else { |
TAIL PUTS(s); |
dprec = (a->body->_mpfr_prec)*0.30103; |
mpfr_free_str(s); |
if ( !dprec ) dprec = 1; |
|
dprec += 1; |
|
sprintf(fbuf,"%%.%dR%c",dprec,(double_output==1)?'f':(double_output==2)?'e':'g'); |
|
mpfr_asprintf(&s,fbuf,a->body); |
|
TAIL PUTS(s); |
|
mpfr_free_str(s); |
|
} |
} |
} |
#endif |
#endif |
|
|
void printz(Z n) |
void printz(Z n) |
{ |
{ |
if ( hex_output == 1 ) { |
printmpz(BDY(n)); |
TAIL PUTS("0x"); |
|
mpz_out_str(OUT,16,BDY(n)); |
|
} else |
|
mpz_out_str(OUT,10,BDY(n)); |
|
} |
} |
|
|
void printmpz(mpz_t z) |
void printmpz(mpz_t z) |
{ |
{ |
|
#if !defined(VISUAL) |
if ( hex_output == 1 ) { |
if ( hex_output == 1 ) { |
TAIL PUTS("0x"); |
TAIL PUTS("0x"); |
mpz_out_str(OUT,16,z); |
mpz_out_str(OUT,16,z); |
} else |
} else |
mpz_out_str(OUT,10,z); |
mpz_out_str(OUT,10,z); |
|
#else |
|
char *s; |
|
if ( hex_output == 1 ) { |
|
TAIL PUTS("0x"); |
|
s = mpz_get_str(0,16,z); |
|
} else { |
|
s = mpz_get_str(0,10,z); |
|
} |
|
TAIL PUTS(s); |
|
#endif |
} |
} |
|
|