Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - KPG

Страницы: [1]
1
PHP / 34.73 - 34.73 = 7.17721265656 E9
« : 30 Ноября 2005, 11:53:32 »
0b0rm0t
В данном контексте вопрос был привязан именно к PHP, но не сомневаюсь, что и к любому другому языку он может иметь такое же отношение...

По карйней мере, твой ответ был гораздо конкретнее и имел реальный смысл. За что и спасибо!

И посылание в гугл в твоем ответе имеет конкретный совет "числа с плавающей точкой", а не так "читай ман".
Вот это я имел в виду, когда отвечал на предыдущие сообщения.

2
PHP / 34.73 - 34.73 = 7.17721265656 E9
« : 29 Ноября 2005, 08:29:18 »
Не всегда есть возможность (или время или желание) изучать документацию...

А более конкретного ответа я и не ожидал от тебя услышать. Посмотрел по форуму - так у тебя одни ответы "читай ман" или "не так всё надо делать". Это очень содержательные и полезные ответы. Форум то вроде по PHP и создан насколько я понимаю как раз для обсуждения этого языка а не для отправления на ман...

Проблему конечно решу и ман поизучал(ю), просто на форумах общаются не только такие знатоки ссылок на маны (кстати, хоть бы тогда ссылочку давал - где ман поизучать) как ты, но и люди, готовые поделиться своим опытом и мыслями. Так что иди изучай ман дальше и посылай всех туда же...

3
PHP / 34.73 - 34.73 = 7.17721265656 E9
« : 28 Ноября 2005, 22:18:40 »
Спасибо! Очень остроумный ответ.
Если на всех форумах будут посылать на ман, то зачем тогда и форумы?

Проблему конечно решил: round(summa, 2)

Но вопрос остался:
Почему если в обоих таблицах одинаковые числа (34.73) (т.е. суммировать там нЕчего), то разница между ними считается правильно ( 34.73 - 34.73=0 ).
Но стОит только в одной из таблиц разбить это число на 5 и 29.73, то суммы в обоих таблицах совпадают (присваиваются переменным), а разница между ними уже не равна 0
(34.73 - (29.73+5) = -7.17721265656 E9) ?

4
PHP / 34.73 - 34.73 = 7.17721265656 E9
« : 28 Ноября 2005, 21:43:08 »
Вот такая ерунда получается...
Грубо говоря есть следующее:

В базе данных есть две таблицы.
В одной таблице приход, в другой расход.
поле обозначающее приход/расход = decimal(7,2)

В таблице расход есть две суммы 5.00 и 29.73
В таблице приход одна сумма 34.73

По идее в итоге баланс должен быть 0.
Но у меня получается так, как в заголовке темы.

Причем:
1. Скрипт, который суммирует суммы в таблицах выдает для обоих таблиц суммы=34.73
2. Этот же скрипт при вычитании одной суммы из другой не выдает результат=0
3. Если в таблице расхода удалить эти две суммы и вписать всё одной суммой (34.73), то скрипт выдает разницу=0

В итоге:
1. Суммирование по таблице происходит правильно (выводятся обе суммы)
2. Скрипт считающий разницу между суммами в таблицах считает правильно
3. Всё это вместе не работает...

Страницы: [1]