Create Newton divided difference table using one looping

Hi, I was asked to compute the Newton divided difference table using at most one looping. My teacher didn't say if more loops within a single loop are allowable. So is it possible to do that? Actually I have no problem writing the code using nested loop:
for j=2:n
for k=j:n
D(k,j)=(D(k,j-1)-D(k-1,j-1))/(x(k)-x(k-j+1));
end
end
Any help is much appreciated, thanks!

Risposte (2)

Jan
Jan il 27 Feb 2013
Modificato: Jan il 27 Feb 2013
What happens, if you move the loop counter into the formula?
for j=2:n
D(j:n,j)=(D(j:n,j-1)-D(j-1:n-1,j-1)) ./ (x(j:n)-x(1:n-j+1));
end

1 Commento

Thanks a lot but it doesn't work for me. Can you elaborate a little bit on how to move the loop into the formula?

Accedi per commentare.

The solution suggested above is on right direction,
but need a little bit modification :
D(j:m,j)=(D(j:m, j-1)-D(j-1:m-1, j-1))./((x(j:m)-x(1:m-j+1)))';
As the front part is column vector , later part is row vector.

Categorie

Scopri di più su Loops and Conditional Statements in Centro assistenza e File Exchange

Richiesto:

Le
il 27 Feb 2013

Risposto:

il 15 Apr 2014

Community Treasure Hunt

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

Start Hunting!

Translated by