// défintion d'un point struct point { int x, y; }; // définition d'un rectangle via 2 points struct rectangle { struct point p1, p2; }; // fonction de calcul d'un rectangle int surface_rectangle(struct rectangle rect) { return abs((rect.p1.x - rect.p2.x) * (rect.p1.y - rect.p2.y)); } // fonction permettant de créer un rectangle à partir des points (x1,y1) et (x2,y2) struct rectangle creer_rectangle(int x1, int y1, int x2, int y2) { struct rectangle rect; rect.p1.x = x1; rect.p1.y = y1; rect.p2.x = x2; rect.p2.y = y2; return rect; } // fonction qui returne vrai si un point se trouve dans un rectangle booleen inclus(struct rectangle rect, struct point p) { return ( (p.x >= rect.p1.x) && (p.x <= rect.p2. && (p.y >= rect.p1.y) && (p.y <= rect.p2.y))); }