How do I create a loop for this expression?

Basically we have xn+1 = 1/2(xn+(a/xn))
stop if n=N where |x^2N −a|<e. e is max error
Here is my working so far i dont understand how to create a loop for this iteration
a=input('Enter a value for a')
e=input('Enter a value for e')
x0=input('Enter a value for x0')
% if n = 0
x = x0
for n = 1:(N-1)
steps = 0
% iteration counter
if mod((xN)^2 -a) < N
end if n=N
i want to get a lot of values to estimate root(a) but i've made mistakes not sure how to fix

Respuestas (1)

Those modifications fix your code. Your fogot the actually equation in the iteration and had some variables misplaced.
a=input('Enter a value for a \n');
e=input('Enter a value for e \n');
x0=input('Enter a value for x0 \n');
N=input('Enter a value for N max \n');
x = x0
for n = 1:(N-1)
x = 1/2*(x+(a/x));
% iteration counter
if abs((x)^2 -a) < e
NofIterations = n;
break
end
end
NofIterations
rootFromA = x

La pregunta está cerrada.

Etiquetas

Preguntada:

el 1 de Dic. de 2019

Cerrada:

el 20 de Ag. de 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by