예제 #1
0
int main(void)
{
   int choice;

   printf("\nMENU for testing univariate root finding :\n");
   printf("  0. in standard double precision;\n");
   printf("  1. in double double precision;\n");
   printf("  2. in quad double precision.\n");
   printf("  3. in arbitrary multiprecision.\n");
   printf("Type 0, 1, 2, or 3 to select the precision : ");
   scanf("%d",&choice);

   adainit();

   if(choice == 0)
      standard_test();
   else if(choice == 1)
      dobldobl_test();
   else if(choice == 2)
      quaddobl_test();
   else if(choice == 3)
      multprec_test();
   else
      printf("invalid choice, please try again...\n");

   adafinal();

   return 0;
}
예제 #2
0
int main ( int argc, char *argv[] )
{
   char ans;
   int precision,fail;
   int seed = time(NULL);

   adainit();
   srand(seed); /* monodromy loops are probabilistic ! */

   printf("Seed for the random number generators : %d.\n",seed);

   printf("\nMENU for the working precision :\n");
   printf("  0. standard double precision;\n");
   printf("  1. double double precision;\n");
   printf("  2. quad double precision.\n");
   printf("Type 0, 1, or 2 to make a choice : ");
   scanf("%d",&precision);

   scanf("%c",&ans); /* skip end of line character */

   if(precision == 0)
      fail = standard_test();
   else if(precision == 1)
      fail = dobldobl_test();
   else if(precision == 2)
      fail = quaddobl_test();
   else
      printf("Selected precision level is not supported.\n");

   adafinal();

   return 0;
}