Modifications

Sauter à la navigation Sauter à la recherche
786 octets ajoutés ,  4 avril 2025 à 21:17
Ligne 252 : Ligne 252 :  
* '''Ligne 26''' : un nouveau nombre est maintenant disponible, ce dernier est alors stocké dans {{fname|old_value}} pour le prochain tour.
 
* '''Ligne 26''' : un nouveau nombre est maintenant disponible, ce dernier est alors stocké dans {{fname|old_value}} pour le prochain tour.
 
* '''Ligne 27''' : affichage du nombre et sa représentation binaire.  
 
* '''Ligne 27''' : affichage du nombre et sa représentation binaire.  
−
* '''Ligne 29''' : transforme un nombre en sa représentation binaire. Pour rappel, la représentation binaire ne contient que le nombre de bits nécessaires. Par exemplen si {{fname|new_value}} contient 3 alors {{fname|bin()}} produira la chaîne de caractères "0b11". La méthode {{fname|replace()}} enlève le préfixe "0b"... il ne reste que les bits.
+
* '''Ligne 29''' : transforme un nombre en sa représentation binaire. Pour rappel, la représentation binaire ne contient que le nombre de bits nécessaires. Par exemple si {{fname|new_value}} contient 3 alors {{fname|bin()}} produira la chaîne de caractères "0b11". La méthode {{fname|replace()}} enlève le préfixe "0b"... il ne reste que les bits.
−
* '''Lignes 30 et 31''' : Le représentation binaire dont nous avons besoin doit avoir 3 bits. Grâce à une astuce de formatage avec "%3s", la chaîne de caractères va être augmentée, si nécessaire, en 3 positions par insertion d'espace à gauche. Ainsi {{fname|"%3s" % "11"}} produira alors " 11". Pour une valeur de 5,  {{fname|"%3s" % "101"}} produira un contenu inchangé (donc "101"). Enfin, la ligne 31 permet de remplacer les espaces (ceux insérés par le formatage) par des "0". Cans l'exemple ci-avant {{fname|" 11".replace(" ","0")}} produira la chaîne de caractères "011".
+
* '''Lignes 30 et 31''' : Le représentation binaire dont nous avons besoin doit avoir 3 bits. Grâce à une astuce de formatage avec "%3s", la chaîne de caractères va être augmentée, si nécessaire, en 3 positions par insertion d'espace à gauche. Ainsi {{fname|"%3s" % "11"}} produira alors " 11". Pour une valeur de 5,  {{fname|"%3s" % "101"}} produira un contenu inchangé (donc "101"). Enfin, la ligne 31 permet de remplacer les espaces (ceux insérés par le formatage) par des "0". Dans l'exemple ci-avant {{fname|" 11".replace(" ","0")}} produira la chaîne de caractères "011".
 +
* '''Lignes 34 et 35''' : la variable {{fname|s}} contient la représentation binaire du nombre aléatoire, par exemple "011" (3). Ainsi s[0] retourne le bit de poids fort (donc "0") tandis que s[2] retourne le bit de poids faible ("1"). Il se fait que la liste {{fname|LEDs}} est organisée dans le même ordre avec {{fname|LEDs[0]}} branché sur la LED indiquant l'état du bit 2 (bit de poids fort). Ainsi {{fname|LEDs[0].value( 1 )}} allume la LED du bit 2. Si la valeur 1 est remplacée par la valeur du bit de poids fort, donc {{fname|s[0]}} que l'on converti en entier à l'aide de {{fname|int(s[0]}}. Pour résumer {{fname|LEDs[0].value( int(s[0]) )}} pour le poids fort, {{fname|LEDs[1].value( int(s[1]) )}}
 +
et {{fname|LEDs[2].value( int(s[2]) )}} pour le bit de poids faible.
    
== Ressources ==
 
== Ressources ==
32 920

modifications

Menu de navigation