Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Деление единицы на double, Даёт неверный реультат 
:(
    Опции темы
 
У Вас тоже получается 0.03448?
Да [ 1 ]  [33.33%]
Нет [ 2 ]  [66.67%]
Всего проголосовавших: 3
В этом опросе возможен один вариант ответа
Гости не могут голосовать 
night00
  Дата 29.10.2011, 13:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 29.10.2011

Репутация: нет
Всего: нет



Здравствуйте.

Проблема. При делении 1 / 29,8977 php даёт неверный ответ 0.03448
Если делать другими методами (например, windows калькулятором), выдаётся правильное значение 0.03344

В чём может быть проблема и почему такое получается?

Спасибо за ответы.
PM MAIL   Вверх
$дмитрий
Дата 29.10.2011, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 19.6.2004

Репутация: 17
Всего: 45



У меня результат одинаков в php 5.3 и calc 0.033447388929583
PM MAIL   Вверх
night00
  Дата 29.10.2011, 16:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 29.10.2011

Репутация: нет
Всего: нет



Код

$a = 1 / 29,8977;
echo round($a, 5);


Упорно выводит 0.03448
PM MAIL   Вверх
bars80080
Дата 29.10.2011, 21:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



ясен пень, $a = 1 / 29,8977 даст 0.03448 и в пхп и в калькуляторе. если ты конечно сумеешь загнать запятую в калькулятор

подели 1/29
PM MAIL WWW   Вверх
SelenIT
Дата 29.10.2011, 23:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 32
Всего: 401



Опаньки, а как оно так лихо без parse error выполняется? У меня прокатило, только после оборачивания '29,8977' в строку...


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Absinthe
Дата 30.10.2011, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 526
Регистрация: 4.5.2011

Репутация: 5
Всего: 11



SelenIT, я, кстати, удивлен, что там Parse error. Считал, что это нормальный синтаксис, аналогичный $a = 1 / 29;8977;
Вот только в документации не могу найти страницу, описывающую использование ",".
PM MAIL   Вверх
SelenIT
Дата 30.10.2011, 19:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 32
Всего: 401



Мне удалось найти лишь в комментах.

Но всё же интересно, как топикстартер умудрился заставить сабжевый пример работать...


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
ksnk
Дата 30.10.2011, 21:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Цитата(SelenIT @  30.10.2011,  19:45 Найти цитируемый пост)
Но всё же интересно, как топикстартер умудрился заставить сабжевый пример работать... 

imho, был написан калькулятор. Числа с запятой вводились в поля формы... Так довольно несложно напороться на такую проблему. 


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
bars80080
Дата 30.10.2011, 22:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



Цитата(SelenIT @  30.10.2011,  19:45 Найти цитируемый пост)
Но всё же интересно, как топикстартер умудрился заставить сабжевый пример работать... 

может банально он просто не договорил. на самом деле у него число может проходить сквозь floatval()
PM MAIL WWW   Вверх
Absinthe
Дата 30.10.2011, 22:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 526
Регистрация: 4.5.2011

Репутация: 5
Всего: 11



Цитата

Мне удалось найти лишь в комментах.
 Кстати не советую искать в русской доке. Она года как 3 не существует, т.к. разработчики разумно решили "лучше никакой доки, чем неправильная".

Цитата

Each of the expressions can be empty or contain multiple expressions separated by commas.
 Впринципе раз других упоминаний нет, то все понятно.
PM MAIL   Вверх
SelenIT
Дата 30.10.2011, 23:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 32
Всего: 401



Цитата(ksnk @  30.10.2011,  21:16 Найти цитируемый пост)
Числа с запятой вводились в поля формы...

Я думал аналогично. Но в третьем посте темы вроде как приведен конкретный код...


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
ksnk
Дата 30.10.2011, 23:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



SelenIT, Приведенные код никак не может быть исполнен на стандартном PHP. 

Кстати, еще один потенциальный источник - PHP как скриптовый язык некоего приложения, мало ли кто там чего накрутил. К примеру, переопределил стандартную реакцию на ошибку парсинга...

В общем - пусть топикстартер раскажет откуда дровишки?  smile 


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0608 ]   [ Использовано запросов: 24 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.