mirror of
https://github.com/cc65/cc65.git
synced 2024-12-23 19:29:37 +00:00
Added a test program for division and modulo operation.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4906 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
parent
4a32e84639
commit
57bd3bb346
36
testcode/lib/moddiv-test.c
Normal file
36
testcode/lib/moddiv-test.c
Normal file
@ -0,0 +1,36 @@
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
|
||||
int main (void)
|
||||
{
|
||||
int a, b;
|
||||
int div, mod;
|
||||
|
||||
printf ("Please note that this program does an\n"
|
||||
"exhaustive test for the division and\n"
|
||||
"modulo operation and therefore runs for\n"
|
||||
"almost ever. On my box, it's nearly two\n"
|
||||
"days in warp mode of VICE.\n\n");
|
||||
|
||||
a = 0;
|
||||
do {
|
||||
b = 1;
|
||||
do {
|
||||
div = a / b;
|
||||
mod = a % b;
|
||||
if (div * b + mod != a) {
|
||||
printf ("Found problems:\n"
|
||||
" Result of %u / %u is %u\n"
|
||||
" Result of %u %% %u is %u\n",
|
||||
a, b, div, a, b, mod);
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
++b;
|
||||
} while (b != 0);
|
||||
if ((a & 0xFF) == 0) {
|
||||
printf ("%5u ", a);
|
||||
}
|
||||
++a;
|
||||
} while (a != 0);
|
||||
return EXIT_SUCCESS;
|
||||
}
|
Loading…
Reference in New Issue
Block a user