Exemple de conversion de chaîne en valeur numérique
Considérons une suite d’entiers dont chaque terme est la somme des carrés des chiffres qui composent le terme précédent dans la suite. On démontre qu’une telle suite est toujours périodique et qu’il n’y a que deux périodes possibles.
Traîter les termes de la suite comme des chaînes de caractères, est particulièrement adapté à ce problème. Chaque terme n est converti en la chaîne de ses chiffres ch grâce à la fonction prédéfinie « string_of_int », puis chacun des chiffres, ayant une valeur x, on en tire le carré qui s’ajoute au compteur m, lequel va constituer le terme suivant, d’où la fonction « suite ». Bien sûr la boucle « for » peut avantageusement être remplacée par une définition récursive.
I LE LANGAGE CAML
II PREMIERES FONCTIONS, RECURSIVITE TERMINALE
III TRAITEMENT DES LISTES
IV PARCOURS D’ARBRE EN PROFONDEUR
V CHAINES DE CARACTERES
VI AFFECTATION, ITERATION
VII VECTEURS ET TABLEAUX
VIII ARTICLES (RECORDS)
IX TYPES RECURSIFS
X LE PASSAGE PAR NECESSITE ET LES FLUX
XI LE HASARD : ALGORITHMES D’EVOLUTION
XII GRAPHIQUE
XIII MANIPULATION DE LA SOURIS
XIV EXEMPLES DE SYSTEMES MULTI-AGENTS
Programmation par l’exemple en Caml (340 KO) (Cours PDF)