summaryrefslogtreecommitdiff
path: root/tests/ttrunc.c
diff options
context:
space:
mode:
authorvlefevre <vlefevre@280ebfd0-de03-0410-8827-d642c229c3f4>2003-09-24 22:32:40 +0000
committervlefevre <vlefevre@280ebfd0-de03-0410-8827-d642c229c3f4>2003-09-24 22:32:40 +0000
commit788b255e420f8d4ba0f0b43ce87b00b62d60a896 (patch)
treeab61feb20fd18f316aca30d1da9b7983a6f9d9fd /tests/ttrunc.c
parenta7589b2a6e3e129bb0aea18469ecfa399e0f31f2 (diff)
downloadmpfr-788b255e420f8d4ba0f0b43ce87b00b62d60a896.tar.gz
Changed some stderr to stdout.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@2448 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'tests/ttrunc.c')
-rw-r--r--tests/ttrunc.c213
1 files changed, 114 insertions, 99 deletions
diff --git a/tests/ttrunc.c b/tests/ttrunc.c
index a28828482..dedaa36de 100644
--- a/tests/ttrunc.c
+++ b/tests/ttrunc.c
@@ -1,6 +1,6 @@
/* Test file for mpfr_trunc, mpfr_ceil, mpfr_floor.
-Copyright 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+Copyright 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
This file is part of the MPFR Library.
@@ -31,117 +31,132 @@ MA 02111-1307, USA. */
int
main (void)
{
- int j, k; mpfr_t x, y, z, t, y2, z2, t2;
+ int j, k; mpfr_t x, y, z, t, y2, z2, t2;
tests_start_mpfr ();
- mpfr_init2(x, SIZEX);
- mpfr_init2(y, SIZEX);
- mpfr_init2(z, SIZEX);
- mpfr_init2(t, SIZEX);
- mpfr_init2(y2, SIZEX);
- mpfr_init2(z2, SIZEX);
+ mpfr_init2(x, SIZEX);
+ mpfr_init2(y, SIZEX);
+ mpfr_init2(z, SIZEX);
+ mpfr_init2(t, SIZEX);
+ mpfr_init2(y2, SIZEX);
+ mpfr_init2(z2, SIZEX);
mpfr_init2(t2, SIZEX);
mpfr_set_d(x, 0.5, GMP_RNDN);
mpfr_ceil(y, x);
- if (mpfr_get_d1 (y) != 1.0) {
- fprintf(stderr, "Error in mpfr_ceil for x=0.5: expected 1.0, got %f\n",
- mpfr_get_d1 (y)); exit(1);
- }
+ if (mpfr_get_d1 (y) != 1.0)
+ {
+ printf ("Error in mpfr_ceil for x=0.5: expected 1.0, got %f\n",
+ mpfr_get_d1 (y));
+ exit (1);
+ }
mpfr_set_d(x, 0.0, GMP_RNDN);
mpfr_ceil(y, x);
- if (mpfr_get_d1 (y) != 0.0) {
- fprintf(stderr, "Error in mpfr_ceil for x=0.0: expected 0.0, got %f\n",
- mpfr_get_d1 (y)); exit(1);
- }
+ if (mpfr_get_d1 (y) != 0.0)
+ {
+ printf ("Error in mpfr_ceil for x=0.0: expected 0.0, got %f\n",
+ mpfr_get_d1 (y));
+ exit (1);
+ }
mpfr_set_d(x, 1.0, GMP_RNDN);
mpfr_ceil(y, x);
- if (mpfr_get_d1 (y) != 1.0) {
- fprintf(stderr, "Error in mpfr_ceil for x=1.0: expected 1.0, got %f\n",
- mpfr_get_d1 (y)); exit(1);
- }
-
- for (j=0;j<1000;j++) {
-
- mpfr_random(x);
- MPFR_EXP(x) = 2;
-
- for (k = 2; k <= SIZEX; k++)
- {
- mpfr_set_prec(y, k);
- mpfr_set_prec(y2, k);
- mpfr_set_prec(z, k);
- mpfr_set_prec(z2, k);
- mpfr_set_prec(t, k);
- mpfr_set_prec(t2, k);
-
- mpfr_floor(y, x);
- mpfr_set(y2, x, GMP_RNDD);
-
- mpfr_trunc(z, x);
- mpfr_set(z2, x, GMP_RNDZ);
-
- mpfr_ceil(t, x);
- mpfr_set(t2, x, GMP_RNDU);
-
- if (!mpfr_eq(y, y2, k))
- {
- printf("Error in floor, x = "); mpfr_print_binary(x); printf("\n");
- printf("floor(x) = "); mpfr_print_binary(y); printf("\n");
- printf("round(x, RNDD) = "); mpfr_print_binary(y2); printf("\n");
- mpfr_clear(x);
- mpfr_clear(y);
- mpfr_clear(y2);
- mpfr_clear(z);
- mpfr_clear(z2);
- mpfr_clear(t);
- mpfr_clear(t2);
- exit(-1);
- }
-
- if (!mpfr_eq(z, z2, k))
- {
- printf("Error in trunc, x = "); mpfr_print_binary(x); printf("\n");
- printf("trunc(x) = "); mpfr_print_binary(z); printf("\n");
- printf("round(x, RNDZ) = "); mpfr_print_binary(z2); printf("\n");
- mpfr_clear(x);
- mpfr_clear(y);
- mpfr_clear(y2);
- mpfr_clear(z);
- mpfr_clear(z2);
- mpfr_clear(t);
- mpfr_clear(t2);
- exit(-1);
- }
-
- if (!mpfr_eq(y, y2, k))
- {
- printf("Error in ceil, x = "); mpfr_print_binary(x); printf("\n");
- printf("ceil(x) = "); mpfr_print_binary(t); printf("\n");
- printf("round(x, RNDU) = "); mpfr_print_binary(t2); printf("\n");
- mpfr_clear(x);
- mpfr_clear(y);
- mpfr_clear(y2);
- mpfr_clear(z);
- mpfr_clear(z2);
- mpfr_clear(t);
- mpfr_clear(t2);
- exit(-1);
- }
- MPFR_EXP(x)++;
- }
- }
-
- mpfr_clear(x);
- mpfr_clear(y);
- mpfr_clear(y2);
- mpfr_clear(z);
- mpfr_clear(z2);
- mpfr_clear(t);
- mpfr_clear(t2);
+ if (mpfr_get_d1 (y) != 1.0)
+ {
+ printf ("Error in mpfr_ceil for x=1.0: expected 1.0, got %f\n",
+ mpfr_get_d1 (y));
+ exit (1);
+ }
+
+ for (j=0;j<1000;j++)
+ {
+ mpfr_random (x);
+ MPFR_EXP (x) = 2;
+
+ for (k = 2; k <= SIZEX; k++)
+ {
+ mpfr_set_prec(y, k);
+ mpfr_set_prec(y2, k);
+ mpfr_set_prec(z, k);
+ mpfr_set_prec(z2, k);
+ mpfr_set_prec(t, k);
+ mpfr_set_prec(t2, k);
+
+ mpfr_floor(y, x);
+ mpfr_set(y2, x, GMP_RNDD);
+
+ mpfr_trunc(z, x);
+ mpfr_set(z2, x, GMP_RNDZ);
+
+ mpfr_ceil(t, x);
+ mpfr_set(t2, x, GMP_RNDU);
+
+ if (!mpfr_eq(y, y2, k))
+ {
+ printf("Error in floor, x = "); mpfr_print_binary(x);
+ printf("\n");
+ printf("floor(x) = "); mpfr_print_binary(y);
+ printf("\n");
+ printf("round(x, RNDD) = "); mpfr_print_binary(y2);
+ printf("\n");
+ mpfr_clear(x);
+ mpfr_clear(y);
+ mpfr_clear(y2);
+ mpfr_clear(z);
+ mpfr_clear(z2);
+ mpfr_clear(t);
+ mpfr_clear(t2);
+ exit(-1);
+ }
+
+ if (!mpfr_eq(z, z2, k))
+ {
+ printf("Error in trunc, x = "); mpfr_print_binary(x);
+ printf("\n");
+ printf("trunc(x) = "); mpfr_print_binary(z);
+ printf("\n");
+ printf("round(x, RNDZ) = "); mpfr_print_binary(z2);
+ printf("\n");
+ mpfr_clear(x);
+ mpfr_clear(y);
+ mpfr_clear(y2);
+ mpfr_clear(z);
+ mpfr_clear(z2);
+ mpfr_clear(t);
+ mpfr_clear(t2);
+ exit(-1);
+ }
+
+ if (!mpfr_eq(y, y2, k))
+ {
+ printf("Error in ceil, x = "); mpfr_print_binary(x);
+ printf("\n");
+ printf("ceil(x) = "); mpfr_print_binary(t);
+ printf("\n");
+ printf("round(x, RNDU) = "); mpfr_print_binary(t2);
+ printf("\n");
+ mpfr_clear(x);
+ mpfr_clear(y);
+ mpfr_clear(y2);
+ mpfr_clear(z);
+ mpfr_clear(z2);
+ mpfr_clear(t);
+ mpfr_clear(t2);
+ exit(-1);
+ }
+ MPFR_EXP(x)++;
+ }
+ }
+
+ mpfr_clear(x);
+ mpfr_clear(y);
+ mpfr_clear(y2);
+ mpfr_clear(z);
+ mpfr_clear(z2);
+ mpfr_clear(t);
+ mpfr_clear(t2);
tests_end_mpfr ();
return 0;