Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.90/21: Рейтинг темы: голосов - 21, средняя оценка - 4.90
5 / 5 / 3
Регистрация: 29.12.2010
Сообщений: 146
1

Округление float числа в меньшую сторону с двумя знаками

23.03.2016, 16:48. Просмотров 3905. Ответов 2
Метки нет (Все метки)


Привет!
Есть числа вида 8,8889324. Как имея подобное число вывести 8,88 ? Функции round или number_format округляют число до 8,89. Проект финансовый и нужна большая точность, иначе в долгосрочной перспективе можно сыграть себе в минус из-за этой проблемы. В крайнем случае можно округлять в меньшую сторону, т.е. выводить 8,80, но функция floor округляет до целого числа. Вообще желательна точность и выведение именно числа 8,88. Как такое реализовать?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.03.2016, 16:48
Ответы с готовыми решениями:

Округление FLOAT в меньшую сторону
Всем привет. Такой вот вопрос! Как округлить Float в меньшую сторону void __fastcall...

Округление числа в большую и меньшую сторону по условию
Определите функцию, которая возвращает заданное число округляется в большую сторону, если дробная...

Округление в меньшую сторону
Всем доброго времени суток, столкнулся по сути с примитивной проблемой, но уже всю голову сломал....

Округление в меньшую сторону
Здавствуйте! Подскажите пожалуйста, как в запросе в вычесляемом поле (выражение) сделать так, чтобы...

2
Эксперт PHP
2975 / 2498 / 1176
Регистрация: 14.05.2014
Сообщений: 7,060
Записей в блоге: 1
23.03.2016, 17:11 2
Лучший ответ Сообщение было отмечено sly444 как решение

Решение

sly444, ну например так
PHP
1
2
3
4
function func($num, $base) // $base - количество знаков после запятой
{
    return floor($num * pow(10, $base)) / pow(10, $base);
}
2
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 14
02.01.2019, 17:50 3
PHP
1
2
3
4
5
6
7
8
    public static function ruble_format($money,$b=2) {
 
        $floor = floor($money * pow(10, $b)) / pow(10, $b);
 
        $ret = number_format($floor, 2, '.', ' ');
 
        return $ret;
    }
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.01.2019, 17:50

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

Округление в меньшую сторону
Здравствуйте! Подскажите, пож., в ASP есть функция округления в меньшую сторону? 4,4=4 ...

Округление сотен в меньшую сторону
Здравствуйте. Написал строку, которая округляет числа до их сотен: Math.Round ( CurrentValue /...

Округление десятичной дроби до целого в меньшую сторону
Добрый вечер! У меня следующий вопрос - к примеру, есть массив чисел от 0 до 5. Над этим массивом я...

Округление деленных чисел в большую/меньшую сторону
Работаю в winforms. Ситуация такая, делю введеное с клавиатуры число на опредленное, поставил...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.