Aller au menu - Aller au contenu
« Vivre les malheurs d'avance, c'est les subir deux fois. »
René Barjavel (La nuit des temps)

Centre d'aideVous êtes ici : zCorrecteurs.fr > Les forums > Espace public > Énigmes, jeux et devinettes > [Énigme] Issue du livre "Les Fourmis" de B. Werber > Voir le sujet

[Énigme] Issue du livre "Les Fourmis" de B. Werber

Niveau moyen

Résolu Le problème de ce sujet a été résolu.

Page : 1 
Auteur Message
0 membre et 1 visiteur visitant ce forum.
Page : 1 
Hors ligne Ziame # Posté le 14/11/2008 à 18 h 36
Arx Tarpeia Capitoli proxima
Avatar de Ziame
Messages : 10674
Groupe : Administrateurs
Bonjour,

Une petite énigme extraite du livre Les Fourmis de Bernard Werber :

Citation : Énigme
Donnez la ligne suivant celles-ci :
1
11
21
1211
111221
...

Si vous aimez écrire et que vous avez des choses à dire sur l'un des thèmes que couvre notre blog, n'hésitez pas ! ;)
 
Hors ligne Fihld # Posté le 14/11/2008 à 18 h 39
tokiponized
Avatar de Fihld
Messages : 2646
Groupe : zAnciens
Hm, relativement connue, mais qui fait toujours son effet. :)

Secret (cliquez pour afficher)
312211

C'est Werber qui l'a inventée ?
Modifié le 14/11/2008 à 18 h 50 par Fihld

« Être de gauche ou être de droite, c’est choisir une des innombrables manières qui s’offrent à l’homme d’être un imbécile ; toutes deux, en effet, sont des formes d’hémiplégie morale. » — José Ortega y Gasset.
 
Hors ligne Ziame # Posté le 14/11/2008 à 19 h 07
Arx Tarpeia Capitoli proxima
Avatar de Ziame
Messages : 10674
Groupe : Administrateurs
Oui tu as raison. Et c'est vrai qu'elle est connue. Je ne sais pas si c'est lui qui l'a inventée mais en tout cas elle apparaît dans le livre les fourmis.

Si vous aimez écrire et que vous avez des choses à dire sur l'un des thèmes que couvre notre blog, n'hésitez pas ! ;)
 
Hors ligne Savageman # Posté le 15/11/2008 à 17 h 53
Ex-administrateur
Avatar de Savageman
Messages : 4199
Groupe : zAnciens
C'est la suite de Conway. Super simple à résoudre avec str_replace() en PHP. :-°

(pardon pour cet interlude geek ! :D)
 
Hors ligne Neoterranos # Posté le 21/11/2008 à 01 h 16
Avatar de Neoterranos
Messages : 110
Groupe : zAnciens
Pas besoin de str_replace() O_o.
Suffit de transposer de code en PHP en utilisant les array pour stocker chaque itération de la suite puis de tout afficher.

Essayez ce script : entrez un chiffre dans l'input et validez. :)

Code : JavaScript
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
function conway()
{
	document.getElementById('response').innerHTML='1<br/>';
	var m = 0;
	var got = '1';
	while(m < document.getElementById('lol').value-1)
	{
		var given = got;
		got='';
		var continuer = 1;
		var i = 0;
		var l = given.length;
		while(continuer)
		{
			var j = i;
			var k = 0;
			while(given[i] == given[j])
			{
				j++;
				k++;
			}
			
			got = got+''+k+''+given[i];
			document.getElementById('response').innerHTML = document.getElementById('response').innerHTML+''+k+''+given[i];
			i = j;
			if(j == l) continuer=0;
		}
		document.getElementById('response').innerHTML += '<br/>';
		m++;
	}
}


Code : HTML
1
2
3
4
5
<form onSubmit='conway()' action='#'>
<input id="lol" type="text"/>
</form>

<div id="response">1<br/></div>


P.S. : Au delà de 20, le script rame (js est plus lent que PHP).

Beware : ROFLCOTER in the sky !
 
Hors ligne Porcepic # Posté le 03/01/2009 à 17 h 18
Je pense donc tu suis
Avatar de Porcepic
Messages : 6
Membres
Je crois que c'est quand même plus court avec des str_replace() sachant que le plus grand chiffre qu'on peut trouver est 3. :D
 
Hors ligne Fihld # Posté le 03/01/2009 à 19 h 16
tokiponized
Avatar de Fihld
Messages : 2646
Groupe : zAnciens
C'est là que je me sens complètement à l'ouest...

« Être de gauche ou être de droite, c’est choisir une des innombrables manières qui s’offrent à l’homme d’être un imbécile ; toutes deux, en effet, sont des formes d’hémiplégie morale. » — José Ortega y Gasset.
 
Hors ligne Neoterranos # Posté le 10/01/2009 à 17 h 39
Avatar de Neoterranos
Messages : 110
Groupe : zAnciens
Citation : Porcepic
Je crois que c'est quand même plus court avec des str_replace() sachant que le plus grand chiffre qu'on peut trouver est 3. :D

Pas vraiment, avec les str_replace tu dois placer plein de conditions.

Beware : ROFLCOTER in the sky !
 
Hors ligne Savageman # Posté le 10/01/2009 à 23 h 14
Ex-administrateur
Avatar de Savageman
Messages : 4199
Groupe : zAnciens
Hors ligne Sidahmed # Posté le 10/01/2009 à 23 h 37
Rectificateur
Avatar de Sidahmed
Messages : 684
Groupe : zAnciens
Citation : Savageman
Ah oui, ce fut un temps ! Tu te rappelles Savageman, on était combien à participer à ce défi ?
 
Hors ligne Savageman # Posté le 10/01/2009 à 23 h 45
Ex-administrateur
Avatar de Savageman
Messages : 4199
Groupe : zAnciens
Bien plus que d'habitude ! :D Mais les gens ne sont plus motivés par ça, c'est dommage pour eux (surtout que je ferais plus jury que participant, donc ils auraient des chances de gagner ! :-° ).
 

Retour au forum Énigmes, jeux et devinettes ou à la liste des forums