diff --git a/tennis.c b/tennis.c index 3148841..fee55a7 100644 --- a/tennis.c +++ b/tennis.c @@ -174,6 +174,14 @@ int validate_entry(const char *entry) { return decode_data(&code); } +static void print_code(code_t *code) { + for (int j = 0; j < 9; j++) { + int index = code->code[j]; + printf("%c", lut[index][0]); + } + printf("\n"); +} + static u64 prng_state = 1; static u32 prng() { prng_state = 3935559000370003845 * prng_state + 1; @@ -189,25 +197,19 @@ int bruteforce() { // with a fixed seed, this is useful for testing. } if (decode_data(&code)) { found++; - for (int j = 0; j < 9; j++) { - int index = code.code[j]; - printf("%c", lut[index][0]); - } - printf("\n"); + print_code(&code); } } return 1; } +#ifndef TENNIS_NO_MAIN int main(int argc, char **argv) { if (argc == 1) { // self-test with codes known before this program was written. #define TEST(entry) if (!validate_entry(entry)) return -1 TEST("48HWOR482"); TEST("5G3LTQ5GN"); - //TEST("5PURGR5PM"); - //TEST("6PJEGRGP5"); - //TEST("8GYUHR86F"); TEST("A3W5KQA3C"); TEST("ARM6JQARU"); TEST("E880MPE8K"); @@ -234,7 +236,6 @@ int main(int argc, char **argv) { TEST("WQJEGRWQ5"); TEST("WRWQARWRC"); TEST("YQJEGRYQ5"); - //TEST("ZKZLZKNNR"); #undef TEST return 0; } @@ -246,6 +247,7 @@ int main(int argc, char **argv) { for (int i = 1; i < argc; i++) { const char *arg = argv[i]; if (strlen(arg) == 9) { + //if (validate_entry(arg)) printf("%s\n", arg); invalid_count += !validate_entry(arg); } else if (!strcmp(arg, "bruteforce")) { invalid_count += !bruteforce(); @@ -257,11 +259,7 @@ int main(int argc, char **argv) { if (code_i >= 7) { code_i = 0; if (encode_data(&code)) { - for (int j = 0; j < 9; j++) { - int index = code.code[j]; - printf("%c", lut[index][0]); - } - printf("\n"); + print_code(&code); } else { invalid_count++; } @@ -270,3 +268,4 @@ int main(int argc, char **argv) { } return invalid_count; } +#endif