1 static char *sccsid = "@(#)test.c 1.2 (Berkeley) 05/19/83"; 2 3 #include <stdio.h> 4 #include "deck.h" 5 6 7 CARD known[ CARDS ]; /* a deck */ 8 CARD deck[ CARDS ]; /* a deck */ 9 CARD hand[ 4 ]; /* a hand */ 10 11 int knownum; 12 13 14 main( argc, argv ) 15 16 int argc; 17 char *argv[]; 18 { 19 register int k, l, m; 20 int i, j, is, n, sum; 21 CARD ic, jc; 22 CARD d[ CARDS]; 23 24 printf( "Assuming cards are same suit\n" ); 25 if( argc == 2 ) { 26 is = atoi( *++argv ); 27 printf( "Starting at i = %d\n", is ); 28 } 29 makedeck( deck ); 30 for( i = is; i < RANKS; i++ ) { /* first card */ 31 ic.rank = i; 32 ic.suit = 0; 33 hand[0] = ic; 34 for( j = 0; j <= i; j++ ) { 35 printf( "%d %d: sum = %d\n", i, j, -10000000 ); 36 } 37 for( j = i + 1; j < RANKS; j++ ) { /* second card */ 38 jc.rank = j; 39 jc.suit = 0; 40 hand[1] = jc; 41 for( k = 0; k < CARDS; k++ ) d[k] = deck[k]; 42 n = CARDS; 43 remove( ic, d, n-- ); 44 remove( jc, d, n-- ); 45 sum = 0; 46 for( k = 0; k < n - 1; k++ ) { /* 3rd card */ 47 hand[2] = d[k]; 48 for( l = k + 1; l < n; l++ ) { /* 4th card */ 49 hand[3] = d[l]; 50 for( m = 0; m < n; m++ ) { /* cut card */ 51 if( m != l && m != k ) 52 sum += scorehand( hand, d[m], 4 ); 53 } 54 } 55 } 56 printf( "%d %d: sum = %d\n", i, j, sum ); 57 fflush( stdout ); 58 } 59 } 60 printf( "\nthe hand scores %d\n", i ); 61 } 62 63