Browse Source

update cm2

master
Francois Lesueur 2 years ago
parent
commit
0a34bcbf3e
  1. 15
      cm2-nombres-code/floatdouble.c
  2. 3
      cm2-nombres.md

15
cm2-nombres-code/floatdouble.c

@ -0,0 +1,15 @@
#include <stdlib.h>
#include <stdio.h>
int main()
{
float a = 0.1;
float b = 0.2;
float c = 0.3;
/* double a = 0.1;
double b = 0.2;
double c = 0.3; */
if (a+b == c) {printf("égaux\n");} else {printf("différents\n");}
}

3
cm2-nombres.md

@ -115,7 +115,7 @@ Virgule fixe
- L'approximation n'est pas forcément visible car nous utilisons une précision assez grande mais elle est là
- => Pas de calcul décimal exact en réels, **pas de tests d'égalités** !!!
- égalités entre entiers seulement
- au pire test d'écart à la valeur recherchée (mais c'est critiqué)
- au pire test d'écart à la valeur recherchée (mais c'est critiqué, les incertitudes ne se propagent pas d'une bonne manière)
- Utilisé en pratique si pas mieux dispo (micro-contrôleur sans unité à virgule flottante par exemple)
@ -128,6 +128,7 @@ Virgule flottante
- Exemple du double : 1 bit de signe, 11 bits d'exposant, 52 bits de mantisse (norme IEE754)
- Les mêmes approximations que précédemment ! (et donc pas non plus de tests d'égalité !!!)
- Couramment utilisé
- ([floatdouble.c](cm2-nombres-code/floatdouble.c))
Calcul exact (bonus, hors programme)

Loading…
Cancel
Save