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

Вниз

Вопрос про округление.   Найти похожие ветки 

 
12345   (2005-02-03 12:57) [0]

Есть три целых: x y z. Есть действительное число a.
Вопрос - насолько будут отличатся величины:
Round(ax)+Round(ay)+Round(az) от Round(ax+ay+az)?

Чувствую, что максимум на единицу, а доказать не могу. Кто-нибудь может?

Спасибо.


 
TUser ©   (2005-02-03 13:04) [1]

Да нет, может на 2 отличаться, если имеется в виду Round из Delphi и не использован SetRoundingMode.


 
raidan ©   (2005-02-03 13:56) [2]

Не может на два.


 
Ega23 ©   (2005-02-03 14:04) [3]

ax=0.5, ay=0.5, az=1


 
raidan ©   (2005-02-03 14:30) [4]

Точно, я тупица.

memo1.Lines.Add(inttostr(round(1.5)+round(1.5)+round(1.5)));
memo1.Lines.Add(inttostr(round(1.5+1.5+1.5)));


 
12345   (2005-02-04 19:30) [5]

Ну хорошо - максимум на два. А доказать это можно?
А то вдруг пример найдется где и на три.


 
default ©   (2005-02-04 21:03) [6]

а почему когда целая часть числа чётная при дробной части 0.5
Round округляет в меньшую сторону, а когда нечётная при той же дробной части - в большую?


 
begin...end ©   (2005-02-04 21:17) [7]

> [6] default ©   (04.02.05 21:03)

Из хелпа:

If X is exactly halfway between two whole numbers, the result is always the even number. This method of rounding is often called "Banker’s Rounding".


 
default ©   (2005-02-04 21:27) [8]

а нафиг так сделано?
такая фигня происходит потому что там FISTP используется, а не FRNDINT


 
default ©   (2005-02-06 18:21) [9]

вот тут объяснение если кому интересно
http://delphimaster.net/view/15-1107547412/



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

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

Наверх





Память: 0.48 MB
Время: 0.051 c
14-1106691207
GanibalLector
2005-01-26 01:13
2005.02.20
ищу хорошую книгу по программированию


1-1107732875
woman
2005-02-07 02:34
2005.02.20
TGrid


8-1098811987
Artemka
2004-10-26 21:33
2005.02.20
Проблема с выводом изображения на канву формы...


9-1100760359
Дина
2004-11-18 09:45
2005.02.20
Как проверить, что введенный текст в DBEdit соответствует формату


6-1102415874
Prankster.
2004-12-07 13:37
2005.02.20
Получение файла из сети





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский