diff options
| author | Richard Qin <richard.qin.x@gmail.com> | 2025-09-24 13:50:55 +0800 |
|---|---|---|
| committer | Richard Qin <richard.qin.x@gmail.com> | 2025-09-24 13:50:55 +0800 |
| commit | 87f0114dd8d2cf355c4e631ab089ddd75abdcc0c (patch) | |
| tree | ddb6753774ee91f090f59a89adf7e21f780dc2ad /btest.h | |
| download | datalab2026-87f0114dd8d2cf355c4e631ab089ddd75abdcc0c.tar.gz datalab2026-87f0114dd8d2cf355c4e631ab089ddd75abdcc0c.tar.xz | |
Initial commit: Add starter code for Datalab
Diffstat (limited to 'btest.h')
| -rw-r--r-- | btest.h | 20 |
1 files changed, 20 insertions, 0 deletions
@@ -0,0 +1,20 @@ +typedef int (*funct_t)(void); +typedef int (*funct1_t)(int); +typedef int (*funct2_t)(int, int); +typedef int (*funct3_t)(int, int, int); + +/* Combine all the information about a function and its tests as structure */ +typedef struct { + char* name; /* String name */ + funct_t solution_funct; /* Function */ + funct_t test_funct; /* Test function */ + int args; /* Number of function arguments */ + char* ops; /* List of legal operators. Special case: "$" for floating point */ + int op_limit; /* Max number of ops allowed in solution */ + int rating; /* Problem rating (1 -- 4) */ + int arg_ranges[3][2]; /* Argument ranges. Always defined for 3 args, even if */ + /* the function takes fewer. Special case: First arg */ + /* must be set to {1,1} for f.p. puzzles */ +} test_rec, *test_ptr; + +extern test_rec test_set[]; |
