Boris A Dolgov

Boris A Dolgov
Рейтинг
215
Регистрация
04.07.2007
luckhost:
Вы не знаете за что вы платите?... Что у вас за хостер, root доступ не дает...(мы администрируем нашим клиентам и даем им root доступ, иначе теряет смысл VDS...)

А что будете делать, когда клиент сломает VPS?

Dimanych:
Andreyka, знаю, неудобно, да и проще уж костыль округляющий на 3 цифры после запятой
$x=10.20;
echo floor(round($x*1000)/10)/100;

_vb_, было такое, не хочется испытать на себе)

Это плохо и неправильно. За такое отрывают руки и не только их.

Вам нужен VPS или VDS или выделенный сервер на платформе Windows.

Dimanych:
Систему я уже давно понял, мне не понятно вот что:
Почему при любом выводе выводится целое число, а при использовании floor ceil int возникают погрешности, почему бы не проводить операцию над целым числом, тем что выдаёт echo? Как я вообще могу увидеть именно то что в памяти находится? 1019.9999999999

$x=10.2*100;
var_dump($x);
> float(1020)

printf("%f",$x);
> 1020.000000

var_dump((int)$x);
> int(1019)

Может быть так будет понятным, вот не вижу я тут никаких 9ток, округление не правильное. :)
Всё таки считаю в этом моменте есть баг, да ещё какой!
Может быть вам просто не хочется вдумываться глубоко, вы считате что в PHP не может быть таких багов и вы сразу выносите приговор? :)

Уже писали выше - из-за округления при отображении. Попробуйте вывести printf("%.100f",$x), если пхп так умеет.

Это называется "проблемы при работе с числами с плавающей запятой и их представлением в компьютере".

Дело в том, что числа хранятся в двоичной системе счисления в виде мантиссы (кроме первой цифры) и порядка. Некоторые числа (например, 0.2, 0.4, 0.6, 10.20) нельзя представить в виде конечной двоичной дроби, так как их запись - периодична. Из-за этого возникает погрешность округления. Наиболее хорошо это показывает командная строка питона:

>>> 0.4

0.40000000000000002

>>> 0.6

0.59999999999999998

Но добрые математики придумали решение проблем с округлением и кучей девяток - перед округлением достаточно прибавлять к округляемому что-то очень маленькое, и решать этим проблему:

>>> eps=1e-9

>>> floor(10.20*100)

1019.0

>>> floor(10.20*100 + eps)

1020.0

Вроде как даже проходят в школе :)

>Советую изучить матчасть: http://dedic.ru/node/193

как всегда - много воды и никакой конкретики :)

>Знаете, скрипты на локалке могут работать отлично, но, на железе, где и должна будет стоять одна из панелей - может работать совершенно иначе. Тут и нужно уже тестировать и смотреть ошибки.
Странные скрипты

Обновитесь юмом на 14ую.

>Все сводится к тому, что Mhz - это какой-то мифический показатель, что значит которых никто толком не может сказать. И каждый их видит по своему и отсюда учет и выделение. Так?

Увы, именно так :(

>А разве нет какой-то другой общей единицы учета производительности? Универсальной для всех?

Есть куча попугаев - например, как сказал Андрей, бенчмарки и их выход, или bogomips (http://ru.wikipedia.org/wiki/BogoMIPS).

I.Wanna:

А по теме: я видимо устарел технически... но 60Км/час на мерсе или на запорожце - это все-таки те же 60 км/час, только уровень комфорта разные. Почему же здесь Вы утверждаете, что имеет значение от какого проца эти Мгц?

Это действительно имеет большое значение - разные кеши, наборы инструкций ядра и внутренние оптимизации.

Всего: 2623