#include <iostream>
using namespace std;

double voltage(double v) {
	return v;
}
double hdot(double h) {
	return h * 2;
}
double ndot(double n) {
	return n * 3;
}

typedef double(*eqpointer)(double);

int main() {
	int const eq_num = 3;
	double *midvalues = new double[eq_num];
	eqpointer ODE[eq_num] = { voltage, hdot, ndot };

	for (int j = 0; j < eq_num; j++) {
		midvalues[j] = (*ODE[j])((j + 1) * 10) / 2;  // Value For Example
		printf("midvalues[%d]: %f\n", j, midvalues[j]);
	}
	return 0;
}