int main (int argc, char **argv) { mpfr_t x; tests_start_mpfr (); special (); check_inexact (); check("1.0", 3, MPFR_RNDN, "3.3333333333333331483e-1"); check("1.0", 3, MPFR_RNDZ, "3.3333333333333331483e-1"); check("1.0", 3, MPFR_RNDU, "3.3333333333333337034e-1"); check("1.0", 3, MPFR_RNDD, "3.3333333333333331483e-1"); check("1.0", 2116118, MPFR_RNDN, "4.7256343927890600483e-7"); check("1.098612288668109782", 5, MPFR_RNDN, "0.21972245773362195087"); mpfr_init2 (x, 53); mpfr_set_ui (x, 3, MPFR_RNDD); mpfr_log (x, x, MPFR_RNDD); mpfr_div_ui (x, x, 5, MPFR_RNDD); if (mpfr_cmp_str1 (x, "0.21972245773362189536")) { printf ("Error in mpfr_div_ui for x=ln(3), u=5\n"); exit (1); } mpfr_clear (x); test_generic_ui (2, 200, 100); tests_end_mpfr (); return 0; }
int main (void) { mp_prec_t p; MPFR_TEST_USE_RANDS (); tests_start_mpfr (); special (); particular_cases (); check_pow_ui (); check_pow_si (); check_special_pow_si (); pow_si_long_min (); for (p = 2; p < 100; p++) check_inexact (p); underflows (); overflows (); x_near_one (); test_generic (2, 100, 100); test_generic_ui (2, 100, 100); test_generic_si (2, 100, 100); data_check ("data/pow275", mpfr_pow275, "mpfr_pow275"); tests_end_mpfr (); return 0; }
int main (int argc, char *argv[]) { tests_start_mpfr (); check_nans (); special (); check3 ("-1.716113812768534e-140", 1271212614, MPFR_RNDZ, "1.27121261399999976e9"); check3 ("1.22191250737771397120e+20", 948002822, MPFR_RNDN, "122191250738719408128.0"); check3 ("-6.72658901114033715233e-165", 2000878121, MPFR_RNDZ, "2.0008781209999997615e9"); check3 ("-2.0769715792901673e-5", 880524, MPFR_RNDN, "8.8052399997923023e5"); test_generic_ui (2, 1000, 100); tests_end_mpfr (); return 0; }
int main (int argc, char *argv[]) { mpfr_prec_t p; int k; tests_start_mpfr (); check_nans (); for (p=2; p<200; p++) for (k=0; k<200; k++) check_two_sum (p); check3 ("0.9999999999", 1, MPFR_RNDN, "-10000000827403709990903735160827636718750e-50"); test_generic_ui (2, 1000, 100); tests_end_mpfr (); return 0; }
int main (void) { mpfr_t x; int r; mp_prec_t p; unsigned long k; tests_start_mpfr (); special (); mpfr_init (x); for (p = 2; p < 100; p++) { mpfr_set_prec (x, p); for (r = 0; r < GMP_RND_MAX; r++) { mpfr_set_ui (x, 1, GMP_RNDN); k = 2 + randlimb () % 4; /* 2 <= k <= 5 */ mpfr_root (x, x, k, (mp_rnd_t) r); if (mpfr_cmp_ui (x, 1)) { printf ("Error in mpfr_root(%lu) for x=1, rnd=%s\ngot ", k, mpfr_print_rnd_mode ((mp_rnd_t) r)); mpfr_out_str (stdout, 2, 0, x, GMP_RNDN); printf ("\n"); exit (1); } mpfr_set_si (x, -1, GMP_RNDN); if (k % 2) { mpfr_root (x, x, k, (mp_rnd_t) r); if (mpfr_cmp_si (x, -1)) { printf ("Error in mpfr_root(%lu) for x=-1, rnd=%s\ngot ", k, mpfr_print_rnd_mode ((mp_rnd_t) r)); mpfr_out_str (stdout, 2, 0, x, GMP_RNDN); printf ("\n"); exit (1); } } if (p >= 5) { int i; for (i = -12; i <= 12; i++) { mpfr_set_ui (x, 27, GMP_RNDN); mpfr_mul_2si (x, x, 3*i, GMP_RNDN); mpfr_root (x, x, 3, GMP_RNDN); if (mpfr_cmp_si_2exp (x, 3, i)) { printf ("Error in mpfr_root(3) for " "x = 27.0 * 2^(%d), rnd=%s\ngot ", 3*i, mpfr_print_rnd_mode ((mp_rnd_t) r)); mpfr_out_str (stdout, 2, 0, x, GMP_RNDN); printf ("\ninstead of 3 * 2^(%d)\n", i); exit (1); } } } } } mpfr_clear (x); test_generic_ui (2, 200, 30); tests_end_mpfr (); return 0; }