Red de conocimiento informático - Aprendizaje de código fuente - Preguntas urgentes sobre programación de calculadoras digitales

Preguntas urgentes sobre programación de calculadoras digitales

x^5+3x+1 aumenta monótonamente dentro de [0,0.5], la constante es mayor que 1, no hay una solución real, la ecuación debe ser x^5+3x-1=0 o x^5-3x+1 =0.

El siguiente es un ejemplo de x^5+3x-1=0, puedes modificar el resto de la expresión tú mismo (en código fuente en lenguaje C):

/* Inicio * /

## incluir

##incluir

#incluir

#define EXPR pow(x,5)+3*x-1

resolución flotante(flotante a,flotante b,flotante Err)

{< / p>

float x = a;

float f1,f2;

while((b - a) > Err)

{

f1 = EXPR;

x = (a + b) / 2;

f2 = EXPR;

if(f1 * f2 < 0 )

{

b = x;

x = a;

}

más

{

a = x

}

}

devuelve x;

}

int main()

{

float ans;

ans = Solve(0,0.5,0.01);

printf("%f",ans);

return 0;

}

/* Fin */

Lo anterior es un código muy básico sin optimización ni manejo de errores. Puede agregar modificaciones usted mismo. Además, lo que dijo la persona de arriba es correcto, generalmente no use el método de bisección (la eficiencia de cálculo es demasiado baja), el método de iteración de Newton es una buena opción.