Commande ItérationListe

ItérationListe( <Fonction f>, <Valeur départ \(x_0\)>, <Nombre n> )

Liste L de longueur n+1 dont les éléments sont les images itératives par f de la valeur \(x_0\).

Exemples :

  • Après avoir défini f(x) = x^2 la commande ItérationListe(f, 3, 2) retourne la liste L = \{3, 9, 81} (c’est-à-dire \{3,32,(32)2}).

  • on peut utiliser cette commande pour définir une suite récurrente où ak+1 dépend de ak et k. À partir d’une fonction f de deux variables avec comme Valeur départ une liste de deux nombres\{s, as}, la liste créée sera celle des valeurs as, as+1 ,…​.,as+n dans laquelle pour k>s on a ak+1=f(k, ak).

Après avoir défini f(k,a)=(k+1)*a, qui correspond à la définition récursive de factorielle. La commande ItérationListe(f, {3, 6}, 4) retournera la liste \{6, 24, 120, 720, 5040}

ItérationListe( <Expression>, <Nom Variable>, …​, <Liste Valeurs départ>, <Nombre d’itérations> )

Construit la liste de longueur n+1 dont les éléments sont les images itératives de l’expression en partant de la valeur de départ. Les variables de l' expression sont remplacées par les derniers éléments de la liste à chaque itération. Il doit y avoir au moins autant de valeurs de départ qu’il y a de variables, sinon le résultat est non défini.

Exemples : Soit A et B deux points. Alors ItérationListe(MilieuCentre(A, C), C,{B},3) calcule

  • C0=B ;

  • C1=MilieuCentre(A, C0) ;

  • C2=MilieuCentre(A, C1) ;

  • C3=MilieuCentre(A, C2)

et retourne \{C0, C1, C2, C3}. Ainsi pour A=(0,0) et B=(8,0) le résultat sera \{(8,0), (4,0), (2,0), (1,0)}.

[.kcode]Saisie : Voir aussi la commande : Itération

Note Idée : Utilisation avec des suites numériques

  • Suites arithmétiques a(n+1) = a(n) + r

avec par exemple a(0) = 1 et r = 3 ItérationListe(x+3, 1, 4) retourne \{1, 4, 7, 10, 13}

  • Suites géométriques g(n+1) = q x g(n)

avec par exemple g(0) = 1 et q = 3 ItérationListe(3x, 1, 4) retourne \{1, 3, 9, 27, 81}

  • Suite de Fibonnacci :

Soit f_0 et f_1 deux nombres. ItérationListe(a+b, a,b,{f_0,f_1},5) affecte aux 2 premiers éléments du résultat les deux valeurs de départ. Ensuite les valeurs sont calculées comme suit :

  • f2=f0+f1 ;

  • f3=f1+f2 ;

  • f4=f2+f3 ;

  • f5=f3+f4.

et retourne \{f0, f1, f2, f3, f4, f5 }. Ainsi pour f_0=1 et f_1=1 le résultat sera \{1,1,2,3,5,8}.

  • Suites de Collatz ou Syracuse :

ItérationListe(Si(floor(x / 2) ≟ x / 2, x / 2, 3x + 1), 14, 8) retourne \{14, 7, 22, 11, 34, 17, 52, 26, 13} les 8 premiers termes de cette suite de premier terme 14

  • Suites récurrentes avec présence de n dans la formule :

🦁Soit la suite \{7, 71, 712, 7123, 71234, 712345}, une interprétation : le premier terme, u0, est 7, le suivant, u1, 10 fois 7 augmenté de 1, le suivant du suivant, u2, 10 fois 71 augmenté de 2 …​/…​

on va définir une fonction de 2 variables f(n,x) (le n étant la 1ère) f(n, x) = 10x + n `et la validation de `ItérationListe(f, {1, 7}, 5) exécutant les itérations de la fonction f à partir de n=1 pour une valeur d’image de départ de 7, retournera la liste des 6 nombres présentés.

Menu view cas.svg Calcul formel :

Cette commande fonctionne à l’identique dans la fenêtre Calcul formel