Ir para conteúdo
  • Cadastre-se

  • Este tópico foi criado há 2294 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Olá!

Fazendo uns testes aqui com arredondamento no Delphi Xe7, identifiquei que a função RoundTo do delphi me traz um arredondamento errado.

se fizer o RoundTo( 153.925 , -2 ) e me retorna 153,92

se fizer o RoundTo( 153.725 , -2 ) e me retorna 153,73

 

testei no Xe8 também ocorre, ai fui la no Delphi 2007, e faz certo.
Procurei na web por outras formas de arredondar e também ocorre o problema com outras funções.

Alguem que tem o XE de alguma versão pode testar faz favor, pois to achando q o bug é na unit Math do delphi.

Vlw

Daniel Carus

 

 

  • Consultores
Postado

ACBrUtil.pas confere lá

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Consultores
Postado

Para maior explicação, existem na verdade variadas normas de arredondamento. RoundTO usa a chamada "Banker's rounding". Infelizmente a wikipédia em português não tem um artigo explicativo, só em inglês.

  • Curtir 1

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
  • 4 anos depois...
Postado (editado)

Infelizmente o ACBrUtil.RoundABNT também falha, simule com a seguinte formula: ACBrUtil.RoundABNT(4.93 * 0.5, 2);

Seguindo as normas ABNT deveria dar 2,47 mas é apresentado 2,46

Pois 4.93 * 0.5 = 2.465 arredondando para duas casas 2,47

 

Editado por Marcos Rogerio Zaccaro
  • Este tópico foi criado há 2294 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.