```CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
C                                                                                                                                     C
C         T E S T   L I N E A I R E ,   T R I V I A L   E T   V I O L E N T   D E S   E R R E U R S   D ' A R R O N D I  :            C
C                                                                                                                                     C
C                                                                                                                                     C
C         Author of '\$xtf/flottant.42\$f' :                                                                                            C
C                                                                                                                                     C
C                     Jean-Francois COLONNA (LACTAMME, 20231210111238).                                                               C
C                                                                                                                                     C
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC

program main

double precision    A,B,x0,x1,x2,x3,x4,x5,x6,x7
C                                         Utilisation de la "double precision" representant les nombres flottants sur 64 bits.        C

B=4095.1
A=B+1
C                                         D'ou :                                                                                      C
C                                                                                                                                     C
C                                                           A - B = 1                                                                 C
C                                                                                                                                     C

x0 = 1
x1 = (A*x0)-B
x2 = (A*x1)-B
x3 = (A*x2)-B
x4 = (A*x3)-B
x5 = (A*x4)-B
x6 = (A*x5)-B
x7 = (A*x6)-B
C                                         Evidemment :                                                                                C
C                                                                                                                                     C
C                                                           x1 = A*x0 - B                                                             C
C                                                              = A*1  - B                                                             C
C                                                              = A    - B                                                             C
C                                                              = 1                                                                    C
C                                                                                                                                     C
C                                       et de meme :                                                                                  C
C                                                                                                                                     C
C                                                           x2 = x3 = x4 = x5 = x6 = x7 = 1                                           C
C                                                                                                                                     C

write(*,*) x0
write(*,*) x1
write(*,*) x2
write(*,*) x3
write(*,*) x4
write(*,*) x5
write(*,*) x6
write(*,*) x7
C                                          A la date du 20231210133307, cela donne systematiquement les bons resultats (=1). Cela     C
C                                        vient du fait que les "compilateurs" Fortran sont des traducteurs en C. Or l'examen des      C
C                                        '\$c's correspondants montre que la traduction de :                                           C
C                                                                                                                                     C
C                                                           B=4095.1                                                                  C
C                                                                                                                                     C
C                                        donne sur les MACHINEs '\$LACT??' :                                                           C
C                                                                                                                                     C
C                                                           b = 4095.1f;                                                              C
C                                                                                                                                     C
C                                        et le "f" est le signe d'une simple precision, or le test 'v \$xtc/flottant.42\$c float'       C
C                                        montre qu'en simple precision, cela fonctionne correctement. Il convient donc de trouver     C
C                                        un vrai compilateur Fortran...                                                               C

C                                          A la date du 20231210135000, j'ai trouve la solution. Par exemple, sur '\$LACT19', il       C
C                                        suffit d'utiliser les options :                                                              C
C                                                                                                                                     C
C                                                           f95       -fdefault-real-8                        flottant.42\$f           C
C                                                                                                                                     C
C                                        et sur 'CMAP28' -ex "porte-de-la-chapelle.polytechnique.fr"- :                               C
C                                                                                                                                     C
C                                                           gfortran  -fdefault-real-8 -fdefault-double-8     flottant.42\$f           C
C                                                                                                                                     C
C                                        pour obtenir :                                                                               C
C                                                                                                                                     C
C                                                                    1.0000000000000000                                               C
C                                                                    1.0000000000004547                                               C
C                                                                    1.0000000018630999                                               C
C                                                                    1.0000076314440776                                               C
C                                                                    1.0312591580864137                                               C
C                                                                  129.04063743775941                                                 C
C                                                               524468.25500880636                                                    C
C                                                           2148270324.2415719                                                        C
C                                                                                                                                     C
C                                                                                                                                     C
C                                         Du coup, ce programme possede deux proprietes exceptionnelles :                             C
C                                                                                                                                     C
C                                            1-Il ne peut contenir ni d'erreurs(s) de logique, ni d'erreurs(s) de programmation !     C
C                                                                                                                                     C
C                                            2-La valeur exacte des resultats {x1,x2,x3,x4,x5,x6,x7} est connue a l'avance (=1) !     C
C                                                                                                                                     C
C                                                                                                                                     C
C                                         Le probleme vient de la partie decimale (0.1) de 4095.1 car, en effet, elle demande une     C
C                                       infinite de "decimales" en binaire :                                                          C
C                                                                                                                                     C
C                                                           0.0 0011 0011 0011 0011 0011 0011 0011 0011 0011 ... (ad infinitum)       C
C                                                                                                                                     C
C                                       et ne peut donc etre representee exactement dans un ordinateur...                             C

end
```