É possível obter um valor "exato"? - página 5 1234567 Novo comentário Andrey F. Zelinsky 2014.10.04 11:38 #41 WePlexus: Sim, e a calculadora diz 0,09*5=0,45. :)só precisa ser normalizada://double d=0.019999999999999999; double d=NormalizeDouble(0.09*5,2); double e=(int)(d*100)/100.0; Print("e=",e); Alexandr Bryzgalov 2014.10.04 12:11 #42 abolk: bem, sanyok, você é um mentiroso.Minha função:=0.44. Eu não verifiquei o seu). Alexandr Bryzgalov 2014.10.04 12:12 #43 abolk: A normalização só precisa ser feita:também uma opção ))))e o que se passa com o número? )))0.01999999999999999999 Andrey F. Zelinsky 2014.10.04 12:22 #44 sanyooooook: também uma opção ))))e o que se passa com o número? )))este é o número máximo com o qual a normalização funciona:double d=NormalizeDouble(0.01999999,18); double e=(int)(d*100)/100.0; Print("e=",e); se você tomar mais um 9, ele é normalizado para 0,02. Alexandr Bryzgalov 2014.10.04 12:23 #45 abolk: é o número máximo com o qual a normalização ocorre: Se você tomar mais um 9, ele é normalizado para 0,02. não o corte). Andrey F. Zelinsky 2014.10.04 12:24 #46 sanyooooook: não trunque o número). o que quer que seja -- O formato de precisão da NormalizeDouble() é 0-8 Alexandr Bryzgalov 2014.10.04 12:44 #47 abolk: tão lateralmente -- o formato de precisão em NormalizeDouble() -- 0-8 então já está de lado)) Andrey F. Zelinsky 2014.10.04 12:46 #48 sanyooooook: então é isso, é tudo o mesmo))já estamos chegando ao "coração do problema" -- é por isso que "já"primeiro a decomposição do problema -- depois a composição do problemaou ainda há algumas pontas soltas? Alexandr Bryzgalov 2014.10.04 12:57 #49 abolk: já estamos chegando ao "coração do problema" -- é por isso que "já"primeiro a decomposição do problema -- depois a composição do problemaou ainda existem alguns pontos inexplicáveis?sim )como usar a mesma função (digamos, aquela que você escreveu) para truncar qualquer número de entrada para o número certo de dígitos:mesmo que seja isto:0.01999999999999999999ou isto:0.09*5 Andrey F. Zelinsky 2014.10.04 13:02 #50 sanyooooook: sim )como truncar qualquer número de entrada para o número certo de dígitos usando a mesma função:mesmo que seja isto:ou isto:Para resolver este problema, 0,09*5 tem que ser =0,45, não =0,449999999999999999999e se tal coisa não existe, então o problema é insolúvel 1234567 Novo comentário
Sim, e a calculadora diz 0,09*5=0,45. :)
só precisa ser normalizada:
bem, sanyok, você é um mentiroso.
Minha função:
=0.44.A normalização só precisa ser feita:
também uma opção ))))
e o que se passa com o número? )))
0.01999999999999999999também uma opção ))))
e o que se passa com o número? )))
este é o número máximo com o qual a normalização funciona:
se você tomar mais um 9, ele é normalizado para 0,02.
é o número máximo com o qual a normalização ocorre:
Se você tomar mais um 9, ele é normalizado para 0,02.não trunque o número).
tão lateralmente -- o formato de precisão em NormalizeDouble() -- 0-8
então é isso, é tudo o mesmo))
já estamos chegando ao "coração do problema" -- é por isso que "já"
primeiro a decomposição do problema -- depois a composição do problema
ou ainda há algumas pontas soltas?
já estamos chegando ao "coração do problema" -- é por isso que "já"
primeiro a decomposição do problema -- depois a composição do problema
ou ainda existem alguns pontos inexplicáveis?
sim )
como usar a mesma função (digamos, aquela que você escreveu) para truncar qualquer número de entrada para o número certo de dígitos:
mesmo que seja isto:
0.01999999999999999999ou isto:
sim )
como truncar qualquer número de entrada para o número certo de dígitos usando a mesma função:
mesmo que seja isto:
ou isto:
Para resolver este problema, 0,09*5 tem que ser =0,45, não =0,449999999999999999999
e se tal coisa não existe, então o problema é insolúvel