#include <stdio.h>
#include <math.h>
#include <signal.h>
+#include <stdlib.h>
+#include <stdbool.h>
#define BASE_DEFAULT 7 /* # cards in initial deal */
#define TURNS_DEFAULT 20 /* show this many turns if total is greater */
-#define TRUE 1
-#define FALSE 0
-
static int si, sk, sM, sN;
static int sa, sb;
-static int verbose = FALSE;
+static bool verbose = false;
static double log_a_choose_b(int a, int b);
exit(0);
}
-main(argc, argv)
-int argc;
-char **argv;
+main(int argc, char **argv)
{
extern char *optarg; /* set by getopt */
extern int optind; /* set by getopt */
- static double hyper_prob();
+ extern double hyper_prob();
int status, special, total, columns, i, j;
int base = BASE_DEFAULT;
int turns = TURNS_DEFAULT;
- int gammatest = FALSE;
- int ormore = FALSE;
- int hypertest = FALSE;
- int choosetest = FALSE;
- int headers = TRUE;
- int wide = FALSE;
+ bool gammatest = false;
+ bool ormore = false;
+ bool hypertest = false;
+ bool choosetest = false;
+ bool headers = true;
+ bool wide = false;
while ((status = getopt(argc, argv, "b:c:ght:vwBGH")) != EOF)
{
break;
case 'G':
- gammatest = TRUE;
+ gammatest = true;
break;
case 'H':
- hypertest = TRUE;
+ hypertest = true;
break;
case 'g':
- wide = ormore = TRUE;
+ wide = ormore = true;
break;
case 'h':
- headers = FALSE;
+ headers = false;
break;
case 'B':
- choosetest = TRUE;
+ choosetest = true;
break;
case 't':
break;
case 'v':
- verbose = TRUE;
+ verbose = true;
break;
case 'w':
- wide = TRUE;
+ wide = true;
break;
default:
* giving the final answer.
*/
-static double hyper_prob(i, k, M, N)
+double hyper_prob(i, k, M, N)
int i, k, M, N;
{
double p, exp();