[firebase-br] Fwd: Problema com Double

eduardo eduardo em icontroller.com.br
Dom Maio 29 17:34:43 -03 2005


Oi Marlon

Este é o problema dos Floats

Os tipos que vc pode usar para não incorrer neste problema são o 
Integer, Int64 e o Currency.

Extended, Single e Double te darão o mesmo problema.

Quanto ao caso ds impressoras, realmente não sei explicar. O que sei é 
que o comportamento dos floats é relacionado ao processador,e por essa 
razão se comportam diferentes em máquinas diferentes.

Eu, particularmente não ustilizo campos Float e tenho utilizado Currency 
ao invés de Extended e tenho me livrado destes problemas de 
float/arredondamento.

No seu caso, para um valor inteiro grande, aconselho o INT64

[]s Eduardo


marlon david de souza wrote:
> Boa tarde a todos,
> 
>   Alguem já viu algo parecido?
>   Ao atribuir alguns números inteiros grandes (exp: CNPJ) para variáveis do
> tipo "double", estes estão ficando com casas decimais. Exemplo:
> 
>     var
>       tst: Double;
>     .
>     .
>     tst := 33641358237322; // Ao consultar o valor desta variável, está
> retornando o valor 33641358237321,9968
> 
>   Ao procurar o problema, constatei que este problema somente acontece em
> algumas máquinas que possuem instalado impressoras mais recentes. Se eu
> excluo a impressora ou instalo uma mais antiga (exp:HP 695C), daí funciona.
> 
>   Será que isso tem solução? Obs: a resposta pode ser em "private"!
> 
> 
> Sem mais, agradeço antecipadamente a atenção
> 
> ----------------------
> Marlon David de Souza
> Desenvolvimento
> Sysmo Informática Ltda
> 
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> 





Mais detalhes sobre a lista de discussão lista