magie2.py

Created by schraf

Created on August 09, 2020

354 Bytes

Explications en vidéo

Ce programme très court permet de faire un tour de cartes plutôt sympathique qui réussit assez souvent.

  • Faire mélanger un jeu de 52 cartes à un spectateur (on peut aussi n’utiliser que les cartes 1 à 5 par exemple)
  • Le spectateur pose 3 rangées de 10 cartes (4 rangées c’est encore mieux)
  • En parallèle vous tapez sur la calculatrice les codes des cartes (V=D=Roi=5, 10=0 et les autres gardent leurs valeurs)
  • Vous demandez au spectateur de choisir dans sa tête une carte de la première ligne
  • La calculatrice vous donne la ou les cartes les plus probables. Si elle indique 100%, vous pouvez dire une phrase comme “Ton esprit est vraiment simple à lire !” et dans le cas où il y a 2 choix (par exemple 80% - 20%), semez le doute chez le spectateur en lui disant que c’est de sa faute, il devait trop hésiter entre 2 cartes, etc. Il peut arriver plus rarement que la machine propose 3 ou 4 possibilités !! Dans ce cas, vous risquez hélas de louper le tour…
  • Ensuite le spectateur dit quelle carte il avait choisie puis avance sur le jeu en regardant à chaque fois la valeur de la carte
  • Statistiquement, il arrivera sur la ou une des cartes que la machine avait choisies

Il s’agit du comptage de Kruskal


def magie(r=3,n=10):
  print("Rappel : V=D=R=5, 10=0")
  jeu = input(str(r * n) + " cartes : ")
  fin = [0] * n
  for h in range(n):
    c = h
    while c < r * n:
      v = int(jeu[c])
      c += 10 if v == 0 else v
    fin[c % n] += 1
  for h in range(n):
    v = int(100 * fin[h] / n)
    if v > 0: print(v,"% sur carte", 1 + h)

magie()