Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.11.13;
Скачать: [xml.tar.bz2];

Вниз

Как реализовать обычное математическое округление   Найти похожие ветки 

 
zorik ©   (2005-10-21 11:11) [0]

Ф-ция Round округливает:
1.5=2
2.5=2
3.5=4
4.5=4
5.5=6
6.5=6
Если ли функция какая "нормально" округливает? Или надо писать свою?
Спасибо.


 
Baltika-12   (2005-10-21 11:32) [1]

function MyRound(X:Double; N: Integer): Double;
var
 i,n1: Integer;
begin
 Result := X;
 n1 := 1;
 for i := 1 to N do n1 := n1*10;
 result := Trunc(Result*n1+0.5)/n1;
end;


 
zorik ©   (2005-10-21 12:24) [2]

Спасибо!
Но наверно должна быть и стандартная ф-ция.


 
ShiFT   (2005-10-21 12:48) [3]

int( X: Double)


 
Экспериментатор   (2005-10-21 13:48) [4]

в модуле Math стандартная функция RoundEx - один в один как MyRound у Baltika-12


 
Sergey_R ©   (2005-10-21 14:21) [5]

Вообще-то по правилам математики при округлении (если дробная часть заканчивается на 5) надо смотреть предыдущее число: если число нечетное, тогда округляем до большего, а если четное, тогда -  до меньшего.
Так что Round работает правильно!


 
111_   (2005-10-21 15:00) [6]

Она не округливает а округляет.


 
Lexer ©   (2005-10-21 15:00) [7]

>нечетное, тогда округляем до большего, а если четное, тогда -  до меньшего.

неужто?
ты где такое вычитал?



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

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

Наверх





Память: 0.45 MB
Время: 0.032 c
14-1130122794
-[ HAWK ]-
2005-10-24 06:59
2005.11.13
Исходник теста


1-1129874063
Layner
2005-10-21 09:54
2005.11.13
Как в цикле найти все виз. компаненты на форме


4-1126553860
Alpine
2005-09-12 23:37
2005.11.13
Надо программно навести курсор на ссылку в WebBrowser-е.


14-1130155998
Дельфятник
2005-10-24 16:13
2005.11.13
Где можно можно скачать Report Builder?


4-1126619198
Erik1
2005-09-13 17:46
2005.11.13
Как получить статус процесса?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский