Bonjour
Je vous propose l'exercice suivant , je dispose de jetons magiques capable de produire à leur tour d'autres jetons selon la régle suivante :
un jeton rouge produit un jeton bleu et deux jetons jaunes puis le jeton rouge disparait.
un jeton bleu produit un jeton jaune puis le jeton bleu disparait
un jeton jaune produit un jeton rouge et un jeton bleu puis le jeton jaune disparait .
ces couleurs sont notées : "R","B" et "J" .
je commence par un jeton de couleur rouge
etape 1 ; celui ci me donnera les jetons : B ,J , J.
etape 2 ; la séquence précèdente me donnera : J ,R,B ,R,B .
etape 3 : la séquence précèdente me donnera : R,B, B,J,J,J B,J,J,J.
quel sera le nombre de jetons de chaque couleur à l'etape 2023 ?
Je veux bien te croire Mathafou c'est ce que j'ai pu vérifier aussi... Dans ce cas on pourra chercher le nombre de jetons de chaque couleur à l'étape 10. pour simplifier les choses
que l'on dessine des jetons, que l'on écrive R, B, J ou X, Y, Z ou "1", "2", "3" ou n'importe quel signe pour désigner les jetons, c'est pareil
les chiffres de dpi ne représentent pas les nombres de jetons mais les jetons eux même
étape 3 selon dpi : 12 233 3 233 3
étape 3 selon flight :RB BJJ J BJJ J
c'est pareil
si on veut faire évoluer les jetons par un traitement de texte
il faut décomposer chaque étape :
remplacer partout R par X, puis B par Y puis J par Z (sauvegarde)
puis remplacer partout X par BJJ puis Y par J puis Z par RJ
ou autres symboles que ceux là, mais de toute façon en deux étapes avec deux jeux de symboles
faire ça ainsi est toutefois assez pénible, et sinon à la main source d'innombrables erreurs.
de toute façon on ne demande pas la chaine ordonnée des jetons mais juste leur nombre :
(R,B,J) = (1,0,0) -> (0, 1, 2) -> (2,2,1) -> (1,3,6) etc
le "traitement de texte" peut bien entendu être remplacé par un programme
mais la substitution de symboles préalable au remplacement est toujours indispensable.
ici en Python :
table=str.maketrans('RBJ','XYZ')
jetons="R"
print(jetons)
for i in range(5):
# substitution de symbole sauve les jetons d'origine
jetons=jetons.translate(table)
jetons=jetons.replace('X','BJJ')
jetons=jetons.replace('Y','J')
jetons=jetons.replace('Z','RB')
print(jetons)
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :