#include <iostream>
#include <iomanip>

using namespace std;

typedef double (*Func)(double, double);

void Example(Func f[], double x, double y)
{
    for(int i = 0;f[i];++i)
        cout << f[i](x,y) << endl;
}

double add(double x, double y) { return x+y; }
double sub(double x, double y) { return x-y; }
double mul(double x, double y) { return x*y; }

Func f[] = {add,sub,mul,0};

int main(int argc, char * argv[])
{
    Example(f,3,2);
}
