Información

Fecha de entrega 22/01/2026 17:00:00
Tiempo límite de envío Sin límite de envío

Inicia sesión

[Q2] La suite de Conway

La suite de Conway est une suite d'entiers, dans laquelle chaque terme se détermine en énonçant les chiffres formant le terme précédent. Le premier terme est 1, puis 11 ("un 1"), puis 21 ("deux 1"), puis 1211 ("un 2, un 1"), 111221, etc. On peut construire d'autres suites en partant d'autres termes initiaux, par exemple 2, 12, 1112, 3112, ...

Pour simplifier, on représente un terme de la suite par la liste de ses chiffres, sous forme d'entiers séparés. Ainsi, 1211 devient [1, 2, 1, 1]. Chaque terme suivant se construit en décrivant le terme précédent, c'est-à-dire en énonçant le nombre de fois où chaque chiffre est répété, suivi du chiffre en question. Par exemple, pour produire le terme qui suit [2, 1], on lit "un 2 et un 1" et le terme est donc [1, 2, 1, 1]. L'objectif de cette question sera d'écrire une fonction conway(lst) qui prend la liste lst représentant un terme en paramètre et qui retourne la liste représentant le terme suivant.

Par exemple :

conway([1]) == [1,1]
conway([1,1]) == [2,1]
conway([2,1]) == [1,2,1,1]
conway([1,1,0,1]) == [2,1,1,0,1,1]

Pregunta 1: La suite de Conway

Fonction à compléter (avec pré/post‑conditions) :

Pregunta 2: Zone de test

Insérez votre code de test optionnel ci-dessous. Vous pouvez utiliser assert et print pour tester votre programme. Votre code de test sera exécuté à la suite de la définition de votre fonction (il ne faut pas la recopier ici). Ce code test sera ignoré lors de l'évaluation. Il vous sert seulement à tester votre propre code.

Exemple: