1. PHP / Говнокод #12518

    +98

    1. 1
    2. 2
    3. 3
    <?php
    echo (int) ((0.1 + 0.7) * 10);
    ?>

    Похопе меня пугает

    http://ideone.com/gVnkep

    Запостил: Vasiliy, 31 Января 2013

    Комментарии (4) RSS

    • и? те же яйца и в С. это как бы известный факт что многие числа не представимы точно с плавающей точкой. что вот так при отрезании после точки и проявляется.
      Ответить
    • Жуткий аккордеон.
      Ответить
    • man 'IEEE 754'
      Ответить
    • 7.999999999999999 == (0.1 + 0.7) * 10
      (int) отбросил дробную часть.

      Просто очередное переоткрытие особенностей стандарта IEEE 754, PHP тут ни при чем.
      Ответить

    Добавить комментарий