1 static char rcsid[] = "$Id: H:/drh/idioms/book/RCS/inter.doc,v 1.11 1997/02/21 19:42:15 drh Exp $";
2 #include "arith.h"
Arith_max(int x,int y)3 int Arith_max(int x, int y) {
4 return x > y ? x : y;
5 }
Arith_min(int x,int y)6 int Arith_min(int x, int y) {
7 return x > y ? y : x;
8 }
Arith_div(int x,int y)9 int Arith_div(int x, int y) {
10 if (-13/5 == -2
11 && (x < 0) != (y < 0) && x%y != 0)
12 return x/y - 1;
13 else
14 return x/y;
15 }
Arith_mod(int x,int y)16 int Arith_mod(int x, int y) {
17 if (-13/5 == -2
18 && (x < 0) != (y < 0) && x%y != 0)
19 return x%y + y;
20 else
21 return x%y;
22 }
Arith_floor(int x,int y)23 int Arith_floor(int x, int y) {
24 return Arith_div(x, y);
25 }
Arith_ceiling(int x,int y)26 int Arith_ceiling(int x, int y) {
27 return Arith_div(x, y) + (x%y != 0);
28 }
29