¿Cómo resolver esta ecuación usando MATLAB? Proporcione el código fuente.
Para una buena apariencia, reemplace i con x. Las ecuaciones se transforman para lograr eficiencia computacional; consulte la derivación a continuación
Puede utilizar un método iterativo sin mover los puntos. Es decir, elija un valor inicial (aquí el valor inicial es 0), sustitúyalo en el lado derecho de la ecuación para obtener un nuevo valor de x, y luego sustitúyalo nuevamente para obtener otro valor de x, y repita hasta que se cumplan los requisitos de precisión. se reunió.
El código de matlab es el siguiente:
tic
x = 0
kmax=1000; > para kk = 1: kmax
xt=1/(1 x) ; (x 1)^(i-1)
S=0; )^( i -1)]
iS=0; suma(1/S);
para i=1:20
xt = xt* (x 1 ) ;
S = S xt ;
iS = iS 1/S
fin
x_nuevo = (1.26 /1.2 - iS)/ 20;
if( abs(x_new-x) lt; 1E-12 )
disp(' ')
info = sprintf(' ¡Iteración convergida! *** Iteración d veces \nx=.13f',kk,x_new);
disp(info)
disp(' ')
romper;
fin
x = x_new
fin
if( kk; == kmax )
disp(' ')
disp('Error en la iteración')
disp(' ')
end
toc
Cálculo en matlab:
¡Convergencia iterativa!
Iteración 151 veces
x=-0.4087705455543
Tardó 0.001385 segundos.
Hermanos, este problema parece simple, pero resolverlo requiere muchas habilidades matemáticas y de programación. La puntuación es demasiado pequeña y otros no pueden resolverlo en absoluto. Me levanto temprano y tengo tiempo, así que puedo ayudarte. Tiene más sentido sumar puntos.