Ver Mensaje Individual
  #1  
Antiguo 13-09-2006
Avatar de xEsk
[xEsk] xEsk is offline
Miembro Premium
 
Registrado: feb 2006
Posts: 454
Reputación: 19
xEsk Va por buen camino
Bug o es normal? - Trunc function

Me he encontrado q la funcion Trunc no hace bien su proposito, o eso me parece (vamos, yo diria q no es normal ). Uso Delphi 2k6.

Ahi va el ejemplo q creo q demuestra q no funciona (o eso creo yo):

Código Delphi [-]
var
  Valor1: Real;
  Valor2: Word;
begin
  Valor1:=(2006.09 - Int(2006.09)) * 100;  // resultado = 9
  Valor2:=Trunc(Valor1); // resultado = 8
  ShowMessage(IntToStr(Valor2));

He probado cambiando el 100 por 101 o 100.01 (entre otros), y si funciona, pero no veo logico lo q hace con 100 exactos:
Código Delphi [-]
var
  Valor1: Real;
  Valor2: Word;
begin
  Valor1:=(2006.09 - Int(2006.09)) * 100.01;  // resultado = 9,0009
  Valor2:=Trunc(Valor1); // resultado = 9
  ShowMessage(IntToStr(Valor2));

Quizas sea ya un "bug" conocido, pero... si no es un bug, ¿puede alguien explicarmelo el pq hace esto?, hehe Gracias.
Responder Con Cita