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

Вниз

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

 
pavelnk ©   (2015-09-09 18:24) [0]

Просветите пожалуйста, вообще не понимаю - http://s013.radikal.ru/i322/1509/1b/08352d7dc99e.png

Т.е. Format("%1.2f",[14.14666666])=14.13 Почему? Это не похоже даже на математическое округление.


 
Rouse_ ©   (2015-09-09 19:19) [1]

http://rouse.drkb.ru/other.php#round


 
кгшзх ©   (2015-09-09 20:12) [2]

потому что глюк в неназванной версии делфи.
а вообще перед точкой в формате стоит количество разрядов всего, а не один


 
pavelnk ©   (2015-09-09 20:19) [3]

RAD 2010. Ничего себе глюк. Я думал это какой то хитрый алгоритм округления.


 
pavelnk ©   (2015-09-09 20:21) [4]

> Rouse_ ©   (09.09.15 19:19) [1]
Спасибо, посмотрю. Вообще это для меня открытие, что стандартные функции врут.


 
Rouse_ ©   (2015-09-09 20:40) [5]


> pavelnk ©   (09.09.15 20:21) [4]
> > Rouse_ ©   (09.09.15 19:19) [1]
> Спасибо, посмотрю. Вообще это для меня открытие, что стандартные
> функции врут.

На округлении - конечно врут, они же не знают что именно тебе нужно, поэтому дают нечно средне взвешенное.


 
Германн ©   (2015-09-10 01:01) [6]

Удалено модератором


 
pavelnk ©   (2015-09-10 05:56) [7]

Удалено модератором


 
Rouse_ ©   (2015-09-10 10:02) [8]


> Ну что значит не знают, есть же вполне конкретные правила
> округления, например Математическое округление. Я думал
> что если пишу Format("%1.2f") То второй знак после запятой
> увеличивается на единицу, например.

с какого это перепугу?


> Начали пользоваться бухгалтеры, выписали мне пол кило звездюлей

Ты сам ответил на свой вопрос


 
icWasya ©   (2015-09-10 10:53) [9]

Вообще то
procedure TForm3.Button1Click(Sender: TObject);
var
 ud273m,ud273mit,stud273m:Single;
begin

 ud273m:= 14.14666666;
 stud273m:=55;
 ud273mit:=  stud273m*ud273m;
 Edit1.Text:= Format("%1.2f",[ud273m])+"*"+Format("%1.2f",[stud273m])+"="+Format("%1.2f",[ud273mit]);
end;

получается
14,15*55,00=778,07

А вот если
procedure TForm3.Button1Click(Sender: TObject);
var
 ud273m,ud273mit,stud273m:Single;
begin

 ud273m:= 42.4/3;
 stud273m:=55;
 ud273mit:=  stud273m*ud273m;
 Edit1.Text:= Format("%1.2f",[ud273m])+"*"+Format("%1.2f",[stud273m])+"="+Format("%1.2f",[ud273mit]);
end;

то 14,13*55,00=777,33
Так что отладчик


 
SergP ©   (2015-09-10 20:51) [10]


>
> Начали пользоваться бухгалтеры, выписали мне пол кило
> звездюлей


в том, чем должны пользоваться бухгалтеры поменьше используй типы с плавающей точкой... для большинства "бухгалтерских чисел" лучше подходит currency.


 
имя   (2015-10-20 17:59) [11]

Удалено модератором



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

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

Наверх





Память: 0.46 MB
Время: 0.002 c
2-1442377244
vegarulez
2015-09-16 07:20
2017.07.16
Twebbrowser+IIHTMLDocument2 парсинг + innerhtml ?


11-1265717864
tippa
2010-02-09 15:17
2017.07.16
runtime error 216


15-1463888094
Кто б сомневался
2016-05-22 06:34
2017.07.16
Zlib - TZDecompressionStream.Seek написан криво


2-1441812254
pavelnk
2015-09-09 18:24
2017.07.16
Просветите по округлению


2-1440613972
RZD
2015-08-26 21:32
2017.07.16
Крупный шрифт на D-7 на разных компах выглядит по разному!?





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