#include #include #include using namespace std; /* Compile on i5.nyu.edu with /opt/gcc450/bin/g++ -std=c++0x min_element.C */ int main() { int a[] = {10, 30, 20, 50, 40}; const size_t n = sizeof a / sizeof a[0]; int *p = min_element(a, a + n, [] (int a, int b) {return abs(a - 16) < abs(b - 16);} ); cout << "Found " << *p << " at position " << p - a << ".\n"; } /* size_t mi = 0; int m = abs(a[mi] - 16); for (size_t i = 1; i < n; ++i) { if (abs(a[i] - 16) < m) { mi = i; m = abs(a[mi] - 16); } } */