Suite de Robinson en algorithme

Salut,

Je cherche un algorithme (programmable sur les compilateurs) permettant de donner le p-ième nombre de la suite de Robinson, cette dernière est:
1
11
21
1211
111221
312211
132221
11123211
...

Merci de ton aide.

med

Réponses

  • Si on en croit ce que l'on trouve sur le wiki, <http://fr.wikipedia.org/wiki/Suite_de_Robinson&gt; cette suite est bien vite convergente, et tu peux te contenter de calculer les 11 premiers termes " à la main " ou plutôt les calculer une bonne fois pour toute et les coder en dur ensuite. Concernant l'algo je ne vois pas ce qui te pose problème si tu veux tout recalculer ...
  • il y a une érreur à la 7ème ligne , il me semble..
    312211...6ème ligne
    13112221...7ème ligne
  • Salut,

    Pour Crédic.. Oui c'est cv je sais, mais ce n'est pas la suite qui est en question, c'est plutôt l'algorithme, et cette suite de Robinson n'est qu'à titre d'exemple, on peut prendre comme terme initial abc pex on aura
    abc
    1a1b1c
    111a111b111c
    311a311b311c
    13211a13211b13211c
    ...

    Pour gilbert.. oui il y avait une erreur au 7ème ligne, mais je pense que les 3 ou 4 premières lignes montrants la logique de construction sont bien suffisantes.

    Donc ce qui m'intéresse c'est l'algorithme de la suite de Robinson !

    C'est comme pex:
    * l'algorithme d'Eratosthène donnant les nombres premiers inférieurs à n.
    * l'algorithme d'Euclide
    * l'algorithme de Gauss pour les systèmes linéaires
    Ce qui caractérisent ces algorithmes, c'est qu'ils sont programmables sur machine.

    Merci

    med
  • je ne pense pas que celà doit se programmer, sous la forme d'un algorithme;(" mais en écrivant un programme qui lit est inscrit la ligne superieur")
  • Je note (i)<--(i-1) l'affectation de la lecture la ligne (i-1) à la ligne (i)
    On doit donc définir cette affectation de manière compréhensible au compilateur (j'utilise Turbo Pascal), puis boucler pour touver la p-ième valeur. Mais je n'arrive pas !!

    Merci

    med
  • med ce que tu donnes n'est pas la suite de Robinson mais la suite de Conway.
    Je ne pense pas que tu trouveras de formule close te donnant le p-ème terme de la suite. Le plus simple est d'utiliser des tableaux et d'implémenter l'algorithme que tu effectues pour calculer les termes à la main, à savoir compter le nombre de chiffres identiques successifs, écrire ce nombre suivi du chiffre en question puis continuer là où tu t'étais arrêté.

    Sur cette page : <http://www.research.att.com/~njas/sequences/?q=1,11,21,1211,111221&amp;language=english&amp;go=Search&gt; ils donnent un algorithme et des liens qui peuvent t'intéresser (en anglais).
  • Merci Guimauve,

    Bon, j'ai pensé qu'un tel algorithme peut-être construit, mais je réalise que cette suite de conway est assez bizaroîdale pour être programmée, en tous cas je vais continuer d'essayer avec tp.

    Merci de vos réponses

    med
Connectez-vous ou Inscrivez-vous pour répondre.