Rang du dernier terme :

On peut modifier la position de A
modifier la fonction en cliquant (clic droit)
sur la courbe puis sur redéfinir. 

n = 3 (slider from 1 to 30, step 1)
list5 = Sequence("u_" + (i), i, 1.0, n)
list6 = Append("u_0", list5)
A = Point(xAxis)
u_0: x(A)
f(x) = x * sin(x) + 2.0
L = IterationList(f(x), u_0, n)
list1 = Sequence(Segment[(Element[L, i], Element[L, i + 1.0]), (Element[L, i + 1.0], Element[L, i + 1.0])], i, 1.0, n)
list2 = Sequence(Segment[(Element[L, i], Element[L, i]), (Element[L, i], Element[L, i + 1.0])], i, 2.0, n)
b = Segment((u_0, 0.0), (u_0, f(u_0)))
text1: "Terme u_n :" + (Element[L, n + 1.0])
text2: "Abscisse de A est u_0 :" + (x(A))
I = Intersect(f, a, (2.8410530455861225, 2.8410530442072828))
c = Line(I, xAxis)
Inter = Intersect(c, yAxis)
d = Segment(I, Inter)
M: (Element[L, n + 1.0], 0.0)
e = Segment(M, (Element[L, n + 1.0], Element[L, n + 1.0]))
list3 = Sequence(Segment[(Element[L, i], 0.0), (Element[L, i], Element[L, i + 1.0])], i, 2.0, n)
list4 = Sequence((Element[L, i], 0.0), i, 2.0, n + 1.0)
list7 = Sequence(Text[Element[list5, i], (Element[L, i + 1.0], -1.0 * 1.0 * 0.5)], i, 1.0, n)
T = TableText({list6, L}, "v")