<!DOCTYPE html>
<html>    
 <head> <!-- Entête HTML --> 
   <meta charset="utf-8" />
   <title>Décimale infinie</title>
 </head>
 <body>
 <?php
 define("WEB_EOL","<br/>");
  // cas des nombres réels ayant un partie décimale infinie
  // calcul en utilisant des variables intermédiaires
  $x=0.1+0.7 ;
  $y=$x*10;

  $correction=1e-15;
  
  $z_sans_correct=floor($y);
  $z_avec_correct=floor($y+$correction);
  echo '$x = (0.1+0.7) = '.$x.WEB_EOL;
  echo '$y = $x*10     = '.$y.WEB_EOL;
  echo '$z = floor($y) sans correction = '.$z_sans_correct.WEB_EOL;
  echo '$z = floor($y) avec correction = '.$z_avec_correct.WEB_EOL;  

  // calcul direct, sans correction : FAUX
  $t=floor((0.1+0.7)*10) ;  
  echo 'floor((0.1+0.7)*10) = '.$t.WEB_EOL; 
 ?>
 </body>
</html>
