double sqr(double x) { return x*x; } long foo(long ncities, double *x, double *y, double ThisX, double ThisY, double CloseDist, double *ThisDistp) { long j=ncities; double ThisDist; do { j--; ThisDist = sqr(x[j]-ThisX)+sqr(y[j]-ThisY); } while (ThisDist > CloseDist); *ThisDistp = ThisDist; return j; }