fork download
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4.  
  5. double voltage(double v) {
  6. return v;
  7. }
  8. double hdot(double h) {
  9. return h * 2;
  10. }
  11. double ndot(double n) {
  12. return n * 3;
  13. }
  14.  
  15. typedef double(*eqpointer)(double);
  16.  
  17. int main() {
  18. vector<eqpointer> ODE = { voltage, hdot, ndot };
  19. int eq_num = ODE.size(); // quantity elements in ODE[]
  20. vector<double> midvalues(eq_num);
  21. for (int j = 0; j < eq_num; j++) {
  22. midvalues[j] = (*ODE[j])((j + 1) * 10) / 2; // Value For Example
  23. printf("midvalues[%d]: %f\n", j, midvalues[j]);
  24. }
  25. return 0;
  26. }
Success #stdin #stdout 0s 15240KB
stdin
Standard input is empty
stdout
midvalues[0]: 5.000000
midvalues[1]: 20.000000
midvalues[2]: 45.000000