Suite
0.1 + 0.2 - - 0.3 FALSE
0.1 + 0.2 - 0.3 --> 5.55111512.3125783 e-17
abs (0.1 + 0.2 - 0.3 ) < 10** -9 TRUE
abs (0.1 + 0.2 - 0.3 ) < 10** -19 FALSE
abs (0.1 + 0.2 - 0.3 ) < 10** -15 TRUE
​
​
>>>
>>>
>>>
>>>
valeur absolue --> valeur sans son signe
On peut représenter un nombre en notation scientifique sur 32 bits.
(-1) m 10
5
n-127
s signe 1 bit
m mantisse 23 bits
n-127 exposant 8 bits pour n
{
Sur 8 bits on peut coder 2 puissance 8 valeurs : 256 valeurs, soit de 0 à 255.
* Le bit implicite de la mantisse est un bit que l'on ne codera pas, c'est la valeur entière qui sera toujours égale à 1.
Vocabulaire Python
➠₊˚๑ # commentaire + il y en a, - le code marche
➠₊˚๑ def définition de la fonction nomée conversion et prenant (n) en paramètre
➠₊˚๑ Toutes les lignes de codes appartenant à la fonction sont indentés ( décalées de 4 espaces )
➠₊˚๑ if n > 1 : si n supérieur à 1, le code suivant est exécuté.
➠₊˚๑ conversion(n//2) appel de la fonction conversion avec n//2 en paramètre
(quotient de la division euclidienne, exemple: 5//2 = 2 6//2 = 3 )
➠₊˚๑ print (n%2, end= ' ') afficher dans la console ( 5%2 = 1 ) % reste de la division euclidienne.
➠₊˚๑ end = ' ' sans retour à la ligne
➠₊˚๑ nbr = int(input("Entrez un nombre décimal : ' ' )) affectation à la variable nbr de la valeur entière rentrée par l'utilisateur.
int ( integer ) entier
Fonctionnement de conversion (15)
L'utilisateur rentre la valeur 15
-> conversion (15)
-> Dans la fonction, 15 > 1 , donc on appelle conversion (7)
-> si 7 > 1, donc on appelle conversion 3 ( fonction qui s'appelle elle-même )
-> 3 > 1 donc 3 : 3 = 1 on appelle conversion 1
​
-> 1 n'est pas supérieur à 1, la fonction n'est plus appelé
-> La fonction a été appelé 4 fois.
​
Les 4 appels affichent sur une même ligne 4 1 reste de la division euclidienne.