char *version = "0.1";
int length = 3;
+int seed = 0;
int xoffset = 1;
int yoffset = 1;
int usage (int ret)
{
FILE *fd = ret ? stderr : stdout;
- fprintf (fd, "usage: %s [-h] [-l length] [-v level]\n", progname);
+ fprintf (fd, "usage: %s [-h] [-l length] [-s seed] [-v level]\n", progname);
fprintf (fd, " -h: help message\n");
fprintf (fd, " -l: box length (%d)\n", length);
+ fprintf (fd, " -s: random seed (%d)\n", seed);
fprintf (fd, " -v: verbose level (%d)\n", verbose);
fprintf (fd, "%s version %s\n", progname, version);
}
length = atoi (arg);
break;
+ case 's':
+ arg = (arg[2]) ? arg + 2 : (--argc > 0) ? *(++argv) : NULL;
+ if (arg == NULL) {
+ VERBOSE (ERROR, fprintf (stderr, "%s: no seed specified\n", progname));
+ return usage (1);
+ }
+ seed = atoi (arg);
+ break;
case 'v':
arg = (arg[2]) ? arg + 2 : (--argc > 0) ? *(++argv) : NULL;
if (arg == NULL) {
}
/* init board */
+ srand (seed);
board_t *board = initboard (length * length);
initplay (board);
/* test: sudoku.exe -h | grep usage */
/* test: sudoku.exe -l 2>&1 | grep length */
+/* test: sudoku.exe -s 2>&1 | grep seed */
/* test: sudoku.exe -v 2>&1 | grep missing */
/* test: sudoku.exe _ 2>&1 | grep invalid */