//     Suites u_n=f(n)

f:= x -> sin(x)/(x^2+1):

for j from 1 to 10 do
      u0:=float(f(j)):
      print(Unquoted,"u[".expr2text(j)."]=".expr2text(float(u0))):
end_for:

plotfunc2d(f, x = -10..10):
plotfunc2d(f, x = 0..40):

plot2d([Mode=List,[point(n,f(n))$n=1..100]]):
plot2d([Mode=List,[point(n,f(n))$n=50..100]]):
plot2d([Mode=List,[point(n,f(n))$n=50..200]]):


// Suites recurrentes - 1 : u_(n+1)=f(u_n)

f:= x -> sqrt(x+1):

u0:=0.5:
j:=0:
N:=100:
print(Unquoted,"u[".expr2text(j)."]=".expr2text(float(u0))):
for j from 1 to N do
      u0:=float(f(u0)):
      t[j]:=u0:
      print(Unquoted,"u[".expr2text(j)."]=".expr2text(float(u0))):
end_for:

plot2d([Mode=List,[point(n,t[n])$n=1..N]]):

plotfunc2d(f, x,x = -1..4):






// Suites recurrentes - 2 : u_(n+1)=f(n, u_n)

f:= (x,y) -> x/ln(y+2):

u0:=5:
j:=0:
print(Unquoted,"u[".expr2text(j)."]=".expr2text(float(u0))):
for j from 1 to 100 do
      u0:=float(f(u0,j)):
      t[j]:=u0:
      print(Unquoted,"u[".expr2text(j)."]=".expr2text(float(u0))):
end_for:

plot2d([Mode=List,[point(n,t[n])$n=1..100]]):