#include #include double derivative1( double f( double ), double x ) { double delta = x / 1000000; return ( f( x + delta ) - f( x ) ) / delta; } double derivative2( double (*f)( double ), double x ) { double delta = x / 1000000; return ( (*f)( x + delta ) - (*f)( x ) ) / delta; } int main( void ) { printf( "Deriv is %f\n", derivative1( sqrt, 1.0 ) ); printf( "Deriv is %f\n", derivative1( (*sqrt), 1.0 ) ); printf( "Deriv is %f\n", derivative2( sqrt, 1.0 ) ); printf( "Deriv is %f\n", derivative2( (*sqrt), 1.0 ) ); }