Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.07;
Скачать: [xml.tar.bz2];




Вниз

Как округлить 0.0294... до 0.3 


Roman_   (2002-02-21 09:00) [0]

Никак не не найду функцию округления. Пробовал через FormatFloat
но это лишние преобразования туда и обратно. Может есть какая функция типа round, только для дробных чисел?



MBo   (2002-02-21 09:07) [1]

нет
x:=round(x*100)/100;



EsKor   (2002-02-21 10:05) [2]

В Delphi 6
Функции RoundTo, SimpleRoundTo
Округляют действительное число до заданного десятичного порядка.
Если в D5 нет таких, действуй как предложил MBo.
Смысл этих умножений и делений в том, что сначала увеличиваешь число на столько порядков до скольки десятичных порядков нужно округлить. При этом нужные десятые, сотые и т.д. переходят в целые. Потом округляешь до целых и возвращаешь порядок числа к первоначальному. Например, если нужно округлить до тысячных - умножаем на 1000 и т.п.



Black King   (2002-02-21 10:42) [3]

Vot primer.
Napisano korjavo, no pri zelanii mozno i perepisat".

Function FloatRound(Value: Extended; Digits: Integer): Extended;
var
Digits10: LongInt;
DigitsString: String;
begin
DigitsString:="1";
while Length(DigitsString)<Digits+1 do DigitsString:=DigitsString+"0";
Digits10:=StrToInt(DigitsString);
Result:=Round(Value*Digits10)/Digits10;
end;



Johnmen   (2002-02-21 10:49) [4]

>Black King : извини, но это бред сумасшедшего программера !



Брат   (2002-02-21 10:52) [5]

0,0294 к 0,3. Извини братец. Никак. Вот если 0,294 - это другой вопрос.



Awex   (2002-02-21 11:34) [6]

Можно и так:
........
RArray : array [0..5] of integer = 1,10,100,1000,10000,100000);
.........

function RoundEx(Value: Extended; n:integer);
begin
Result:=Round(Value*RArray[n])/RArray[n];
end;



Johnmen   (2002-02-21 11:40) [7]

Мужики, бросьте эти извраты на пустом месте ! Тем более, что автору ответ скорее всего уже не нужен...



Роман_   (2002-02-21 12:32) [8]

Thanks всем!!!



Black King   (2002-02-21 12:49) [9]

Sam znaju chto eto bred, potomu i napisal, chto korjavo napisano.

No luchshe eto, chem nichego. :o)




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.07;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.015 c
4-19378           otimist               2001-12-21 16:37  2002.03.07  
WinAPI


1-19268           Deus                  2002-02-20 18:48  2002.03.07  
Обработка eventов в консольном приложении


1-19246           Lord Vader            2002-02-20 09:58  2002.03.07  
СРАВНЕНИЕ СТРОК


6-19280           Andrey Lutsenko       2001-12-10 05:58  2002.03.07  
OS Version of remote comp


7-19361           Прикольщик            2001-12-03 21:05  2002.03.07  
Буду орать до тех пор пока хоть кто нибудь не откликнется! Люди добрые помогите!