Сложение двух чисел формата decimal

Тема в разделе "PHP", создана пользователем Raccoon, 29 июл 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. Raccoon

    Raccoon

    Регистр.:
    31 июл 2007
    Сообщения:
    172
    Симпатии:
    9
    Всем привет!

    В базе есть 2 числа в формате decimal.

    При сложении их PHP дает следующий результат:

    $a = 0.20;
    $b = 1.00;

    $c = $a + $b;

    echo $c; // 1.2

    Почему 1.2, а не 1.20? Ведь логичней было бы. Мне это важно, т.к. это $$$.
     
  2. chang

    chang

    Регистр.:
    20 ноя 2009
    Сообщения:
    364
    Симпатии:
    117
    :D математику подучите ( 5 класс: сравнение десятичных дробей ) а потом программированием занимайтесь .... особенно если програмите что-то связанное с финансами ... а то точно в итоге у кого-то будут убытки

    1.2 равно 1.2000000000000000
    нули которые располагаются вконце дробной части являются незначащими ... т.е. не играют никакой роли при сравнении и вычислении ( если только числа не сравниваются как строки ..)
     
  3. Delk0

    Delk0

    Регистр.:
    26 мар 2010
    Сообщения:
    284
    Симпатии:
    47
    Неясен смысл вопроса.
    Вас заботит итоговая сумма или что при выводе ноль не дописывает?
     
  4. rom4art2

    rom4art2

    Регистр.:
    27 фев 2009
    Сообщения:
    207
    Симпатии:
    88
  5. Raccoon

    Raccoon

    Регистр.:
    31 июл 2007
    Сообщения:
    172
    Симпатии:
    9
    Чанг, очень остроумно.
    Рома, спасибо, то что нужно, не знал что такая функция есть в php
     
  6. polyetilen

    polyetilen Заблокирован

    Регистр.:
    10 авг 2006
    Сообщения:
    814
    Симпатии:
    474
    PHP:
    //1111111,20
    echo number_format(1111111.22',''');
     
    Raccoon нравится это.
Статус темы:
Закрыта.