Red de conocimiento informático - Material del sitio web - Respuestas a los algoritmos de gráficos NS de la computadora universitaria

Respuestas a los algoritmos de gráficos NS de la computadora universitaria

El primero: definir una función para encontrar el factorial de n, es decir, multiplicar 1 por n, y luego obtener el número acumulado de un ciclo

El segundo: método exhaustivo: simplemente asume cada a, b, c, y luego enumerar todo abc, hacer que la ecuación se mantenga y obtener un ciclo triple

El tercer tipo: red de referencia

Método de Newton (método de Newton), también conocido como El método de Newton-Lafite Newton es un método propuesto por Isaac Newton en el siglo XVII para resolver aproximadamente ecuaciones en el campo de los números reales y los números complejos. La mayoría de las ecuaciones no tienen radicales, por lo que es difícil o incluso imposible encontrar raíces exactas, por lo que es particularmente importante encontrar raíces aproximadas de la ecuación. El método de iteración de Newton es uno de los métodos más importantes para encontrar raíces de ecuaciones. Su mayor ventaja es que tiene convergencia cuadrada cerca de la raíz única de la ecuación f(x) = 0. Además, este método también se puede utilizar para encontrar raíces múltiples y complejas de la ecuación. En este momento, las raíces múltiples y complejas son linealmente convergentes, pero algunos métodos pueden transformarlas en convergencia superlineal. Además, el método se utiliza ampliamente en programación informática.

doble función(doble x) //función

{

retorno x*x*x*x*x-3*x*x*x* x+1.5*x*x-4.0;

}

doble func1(doble x) //función directiva

{

return 4*x*x*x*x-9*x*x+3*x;

}

int Newton(doble *x,doble precisión,int maxcyc) / /Número de iteraciones

{

double x1,x0;

int k;

x0=*x;

for(k=0;k

{

if(func1(x0)==0.0)//Si se pasa el valor inicial, el la función devuelve 0

{

printf("¡Derivada de 0 durante la iteración!\n");

Devuelve 0;

}

x1=x0-func(x0)/func1(x0);//Realizar cálculo iterativo de Newton

if(fabs(x1-x0)

{

*x=x1; //devuelve resultado

return 1;

}

else //condición final no alcanzada

x0=x1; //prepararse para la siguiente iteración

}

printf(" ¡Las iteraciones superaron las expectativas!

return 0;

}

int main()

{

doble x ,precisión;

int maxcyc;

printf("Ingrese el valor de iteración inicial x0:");

scanf("%lf",&x );

printf ("Ingrese el número máximo de iteraciones: ");

scanf ("%d",&maxcyc

printf ("Precisión); requerido para la iteración:" ");

scanf("%lf",&precision);

if(Newton(&x,precision,maxcyc)==1) //función if el valor de retorno es 1

printf("Las raíces cercanas a este valor son: %lf\n",x);

else //si la función devuelve el valor 0

printf("¡La iteración falló! \n");

getch();

devuelve 0;

}