Форум: "Основная";
Текущий архив: 2005.10.09;
Скачать: [xml.tar.bz2];
Внизустановить ограничение после запятой Найти похожие ветки
← →
Aliv (2005-09-15 14:47) [0]напомните склеротику
например значение 3,1234567 сократить до 3,12 или 3,1
забыл, чесслово :(
← →
Antonn © (2005-09-15 14:58) [1]
> значение 3,1234567
какой тип у значения?
← →
Aliv (2005-09-15 15:09) [2]real
4.1234345234
надо 4.12
← →
Германн © (2005-09-15 15:11) [3]А где сократить? В памяти или на экране?
← →
Aliv (2005-09-15 15:20) [4]хоть так хоть так :)
у меня сложное уравнение считается, надо вывести ответ (не важно как) с одной-двумя цифрами после точки... пусть даже
label.caption:=floattostr(znach);
наверное в памяти надо подрезать, чтоб выводить потом... или при выводе ограничить... НУ ЗАБЫЛ Я! :(((
блин, это ж так просто, вылетела функция из головы и никакой информации под рукой =(
← →
Германн © (2005-09-15 15:22) [5]FloatToStrF(znach,ffFixed,3,2)
← →
Aliv (2005-09-15 15:25) [6]уфф, спасибо огромное
гора с плеч :)
← →
Ega23 © (2005-09-15 15:28) [7]
Function Trunc2(const aValue:real):Real;
begin
result:=Trunc(aValue*100)/100;
end;
← →
Anatoly Podgoretsky © (2005-09-15 18:56) [8]Ega23 © (15.09.05 15:28) [7]
Как этот неверный ответ полюбился народу, это для обычной математики, но не для двоичной с плавающей запятой. Да и не надо ему это, вполне хватит вывода с форматированием.
← →
GanibalLector © (2005-09-15 20:03) [9]>сократить до 3,12 или 3,1
RoundTo(3.1234567,-1)
и
RoundTo(3.1234567,-2) , соответственно
← →
GuAV © (2005-09-15 22:07) [10]Anatoly Podgoretsky © (15.09.05 18:56) [8]
Почти тоже самое в RoundTo из math.pas . Это следствие народной любви, ошибка, или кто-то чего-то не понял ?
← →
Anatoly Podgoretsky © (2005-09-15 22:14) [11]GuAV © (15.09.05 22:07) [10]
Именно так, очень много включили в последнии версии из-за народной любви. Например присно известное IncDay. Ну невозможно говорить о количестве знаков после запятой для типа с плавающей запятой, который не в состоянии представить большинство чисел точно.
← →
GuAV © (2005-09-15 22:59) [12]Anatoly Podgoretsky © (15.09.05 22:14) [11]
> Например присно известное IncDay.
Там не тот самый код, так не интересно :-)
> который не в состоянии представить большинство чисел
> точно.
Ха, никакой тип не сможет представить большинство чисел точно, если говорить о множестве вещественных (или даже целых) чисел :-)
← →
Anatoly Podgoretsky © (2005-09-15 23:04) [13]Фиксированая запятая - абсолютная точность
Плавающая запятая - относительная точность, правильнее назвать абсолютная неточность.
← →
Anatoly Podgoretsky © (2005-09-15 23:05) [14]Реализация фиксированой запятой у Борланда вызывает сожаление. Они даже в dBase смогли ее испортить.
← →
GuAV © (2005-09-15 23:20) [15]
> Фиксированая запятая - абсолютная точность
Для некоторого числа знаков после запятой.
не согласен с [13]
"Хитрость" currency не в том, что запятая зафиксирована (то же можно достичь и для double, если не менять экспоненту), а тем, что за запятой остаётся 10000 значений, а не 2 в степени N (как в двоичной) и не 2571. Если запятая будет плавать, устанавливая "prescaler" в 1, 10, 100, 1000, и т.д. будет банковсий тип с плавающей запятой.
0,1 (в троичной системе) не представляется абсолютно точно типом currency.
← →
Anatoly Podgoretsky © (2005-09-16 00:21) [16]Ладно не будем обсуждать, те несколько фраз, которые мы сказали, позволяют понять, что о количестве знаков можно говорить только с определенной натяжкой и понимая что делается и когда применимо и почему результат не соответсвует ожидаемому.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.10.09;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.016 c