- 401 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 22:22:09 ]
- >>394
#include<stdio.h> #include<math.h> typedef double (*SingleFun)( double ); double newton(SingleFun fun,SingleFun fprime, double x) { double fx; double fp; double xprev; do { fx = fun(x); fp = fprime(x); if(fp == 0) fp = 1; xprev = x; x -= fx / fp; } while( x != xprev ); return x; } double fN(double N) { return 10.0 * N * log( N ) - 2*N*N; } double dfdN(double N) { return 10.0 * log( N ) - 4.0 * N + 10.0; } int main(void) { double res = newton( fN, dfdN, 1.0 ); printf("result = %1lf\n",res ); printf("10Nlog(N) > 2N^2 is true for N > %lf\n",res); return 0; }
|

|