Info

Cette question est clôturée. Rouvrir pour modifier ou répondre.

How do I create a loop for this expression?

1 vue (au cours des 30 derniers jours)
James Smith
James Smith le 1 Déc 2019
Clôturé : MATLAB Answer Bot le 20 Août 2021
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

Réponses (1)

Thiago Henrique Gomes Lobato
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

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by