Permalink
Browse files

nouvelle histoire

  • Loading branch information...
sdpython committed Oct 26, 2015
1 parent d37f5dc commit 355d43e5be75a81a63284c587fb6a617409a98c4
@@ -33,6 +33,7 @@ Sujets
.. toctree::
:maxdepth: 1
confetti
tri
tsp
orange
@@ -51,6 +52,7 @@ Indices et solutions
.. toctree::
:maxdepth: 1
confetti_solution
tri_solution
tsp_solution
orange_solution
@@ -0,0 +1,52 @@
.. index:: confettis, log, algorithme
.. _l-algo_confetti_logn:
Confettis log(n)
================
A partir de 4-5 ans (mais ce n'est qu'une indication).
C'est une histoire qui a commencé en cours d'informatique où les feutres
manquaient pour pouvoir écrire au tableau. Je propose alors d'écrire
sur le tableau avec un tube de colle puis de lancer des confettis afin
recouvrir la trace invisible. Quelques élèves sortent alors
une feuille de papier et commencer à déchirer des petits morceaux.
IMAGE
Mais nous sommes en cours de programmation et d'algorithmique.
Je m'écris : pourriez-vous faire des *confettis log(n)* ?
Il faut prononcer *confettis logue de henne*.
Mise en scène
-------------
Pour jouer à ce jeu, il suffit d'une feuille de papier,
d'une perforatrice. Les formes d'étoiles marchent tout aussi bien.
Comment faire pour perforer à tout va et transformer cette feuille
de papier en confettis pour qu'il n'en reste plus rien ?
**astuce**
Comment faire plusieurs confettis d'un seul coup sans appeler ses copains
et sans utiliser d'autres perforatrices ?
Solution
--------
Voir :ref:`l-algo_confetti_sol`.
A quoi ça sert ?
----------------
Le papier carbone n'est plus guère utilisé et pourtant il repose sur ce
même principe.
@@ -0,0 +1,42 @@
.. index:: solution, algorithme, confettis, pliage, log, logarthime
.. _l-algo_confetti_sol:
Confettis log(n) (solution)
===========================
L'astuce consiste simplement à plier la feuille
plusieurs fois puis de perforer. A chaque perforation,
il sort autant de confetti que le nombre de plis.
Il n'est pas possible de plier indéfiniment,
la feuille devient vite difficile à percer.
Il y a un compromis à trouver.
IMAGE
Mais alors pourquoi *confettis log(n)* ?
Lorsqu'on plie une fois la feuille, chaque perforation produit
deux confettis. On va deux fois plus vite. Si on plie deux fois la feuille,
il y a quatre épaisseurs. On va quatre fois plus vite. Si on plie trois fois,
il y a huit épaisseurs. On va huit fois plus vite.
Et si on raisonne à l'envers. En dix secondes, une personne
a fait 10 confettis et une autre 80. Il y a 8 fois plus de confettis.
Combien de fois a-t-elle plié sa feuille ?
La réponse est :math:`3 = \ln_2 8` où :math:`\ln_2(x)`
est le logarithme en base 2 de *x*.
A quoi ça sert ?
----------------
Pour découper deux formes identiques, le plus simple
est de les découper en même temps. Elles sont identiques
aux imperfections près.

0 comments on commit 355d43e

Please sign in to comment.