Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

Округление числа!!!   Найти похожие ветки 

 
ser_ega   (2004-03-19 21:39) [0]

Мастера помогите!!!! Есть число A:=3.1456987456. Как мне его округлить до десятых, сотых, тысячных и т.д. Есть же наверное какойто оператор!!!


 
Алхимик ©   (2004-03-19 21:42) [1]

A := Round(A*100)/100;


 
Vemer ©   (2004-03-19 23:51) [2]

У меня примерно так(пример до сотых):
X := Trunc(A*1000) - Trunc(A*100)*10;
A := Trunc(A * 100);
If X > 4 Then A := A + 1;
A := A/100;

Писал на скорую руку по памяти, код можно оптимизировать.
Автору рекомендую разобраться с форматами хранения чисел, иначе никакое округление не поможет.


 
Алхимик ©   (2004-03-20 00:18) [3]


> У меня примерно так(пример до сотых):
> X := Trunc(A*1000) - Trunc(A*100)*10;
> A := Trunc(A * 100);
> If X > 4 Then A := A + 1;
> A := A/100;
> Писал на скорую руку по памяти

Чесать левой ногой правое ухо :)


 
Defunct ©   (2004-03-20 00:35) [4]

Format("%F1.2",[3.1416]); // отобразит 2 знака после запятой
Format("%F1.1",[3.1416]); // отобразит 1 знак после запятой


 
Алхимик ©   (2004-03-20 00:43) [5]

> [4] Defunct ©   (20.03.04 00:35)
Про отображение в вопросе ни слова.


 
Defunct ©   (2004-03-20 00:49) [6]

Алхимик ©   (20.03.04 00:43) [5]

Сам вопрос это подоазумевает.

IMHO округление делается только с целью отображения, не вижу других вариантов применения.

Тока не говорите, что округление можно делать с целью увеличения погрешности результата мат. операций.


 
Германн ©   (2004-03-20 00:50) [7]

Может RoundTo сгодится?


 
DrPass ©   (2004-03-20 22:45) [8]

Нет, RoundTo слишком сложно. Проще

> X := Trunc(A*1000) - Trunc(A*100)*10;
> A := Trunc(A * 100);
> If X > 4 Then A := A + 1;
> A := A/100;
> Писал на скорую руку по памяти, код можно оптимизировать.

только оптимизировать нужно :)



Страницы: 1 вся ветка

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.045 c
1-1082549262
Andy BitOff
2004-04-21 16:07
2004.04.11
Экспорт/импорт реестра.


1-1079861548
TALLA
2004-03-21 12:32
2004.04.11
Использование Chart без формы (в DLL, CGI)


9-1065523303
Иван.
2003-10-07 14:41
2004.04.11
ИСХОДНИК.


7-1076080076
Станислав
2004-02-06 18:07
2004.04.11
Рабочий стол


11-1060239393
avakss
2003-08-07 10:56
2004.04.11
KOL и завершение Windows 98