typedef double real; typedef real (*ReductionMethod)(real *t, size_t n); real function(real v) { for (int i = 0; i < 100; ++i) { v = sin(v + 0.01); } return v; } real reduction_serial(real *t, size_t n) { real sum = 0; for (size_t i = 0; i < n ; ++i) sum += function(t[i]); return sum; }