Monitor
|
00001 00002 #include <stdio.h> 00003 #include <math.h> 00004 #include "point.h" 00005 00012 Point* mkpt(int x, int y) { 00013 Point *p = new Point(); 00014 00015 p->xval = x; 00016 p->yval = y; 00017 00018 return p; 00019 } 00020 00027 double dist(Point a, Point b) { 00028 int xd = a.xval - b.xval; 00029 int yd = a.yval - b.yval; 00030 return sqrt(xd*xd + yd*yd); 00031 } 00032 00039 Point *add(Point *a, Point *b) 00040 { 00041 return mkpt(a->xval + b->xval, a->yval + b->yval); 00042 } 00049 Point *sub(Point a, Point b) 00050 { 00051 return mkpt(a.xval - b.xval, a.yval - b.yval); 00052 } 00053 00060 void move(Point *p, double a, double b) 00061 { 00062 p->xval += a; 00063 p->yval += b; 00064 } 00065 00071 void print(Point p) 00072 { 00073 printf("(%d,%d)", p.xval, p.yval); 00074 } 00075 00083 void prline(Point x, char *op, Point y, Point z) 00084 { 00085 print(x); 00086 printf(" %s ", op); 00087 print(y); 00088 printf(" = "); 00089 print(z); 00090 printf("\n"); 00091 }