Red de conocimiento informático - Conocimiento sistemático - Programación diferencial de Newton

Programación diferencial de Newton

Generalmente, utilizamos el método de iteración de Newton para encontrar la raíz cuadrada. El código de implementación es el siguiente:

¿Doble? Método newton(¿doble? toBeSqrted)? {

¿Doble? ¿incógnita? =?1.0;

Y (abs(x?*?x?-?toBeSqrted)?& gt?1e-5)? {

x? =?(x?+?Privado?/?x)? /?2;

}

¿Volver? x;

}También puedes utilizar la búsqueda binaria. El principio es simple, pero la complejidad del algoritmo es alta.

¿Flotando? sqrtByBisection(flotante?n)? {?

¿Y si? (n?<?0)

¿Regresión? norte;?

¿Flotando? medio, último;?

¿Flotando? Bajo,? arriba;?

Bajo=0,? ¿arriba? =?n;?

¿medio? =?(¿bajo?+?arriba)? /?2;?

¿Qué hacer? {

Si (mid?*?mid?& gt?n)

¿Arriba? =?medio?

¿Y si?

¿Bajo? =?media

¿Finalmente? =?medio

medio? =?(¿arriba?+?bajo)? /?2;?

}?Y (abs(mid-?l?ast)?& gt?EPS);

¿Volver? ¿medio?

}