00001
00002
00003
00004
00005
00006
00007 #include <stdlib.h>
00008
00009 static int tmp = -1;
00010
00011 div_t
00012 div(register int numer, register int denom)
00013 {
00014 div_t r;
00015
00016
00017 if (tmp == -1) {
00018 tmp = (tmp / 2 == 0);
00019 }
00020 if (numer == 0) {
00021 r.quot = numer / denom;
00022 r.rem = numer % denom;
00023 } else if ( !tmp && ((numer < 0) != (denom < 0))) {
00024 r.quot = (numer / denom) + 1;
00025 r.rem = numer - (numer / denom + 1) * denom;
00026 } else {
00027 r.quot = numer / denom;
00028 r.rem = numer % denom;
00029 }
00030 return r;
00031 }