1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
#include "mathops.h" #ifdef TEST #include <stdlib.h> int main(void) { unsigned u; for(u=0; u<65536; u++) { unsigned s = u*u; unsigned root = ff_sqrt(s); unsigned root_m1 = ff_sqrt(s-1); if (s && root != u) { fprintf(stderr, "ff_sqrt failed at %u with %u\n", s, root); return 1; } if (u && root_m1 != u - 1) { fprintf(stderr, "ff_sqrt failed at %u with %u\n", s, root); return 1; } } return 0; } #endif /* TEST */ |