Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/09/2015, 19:13
Tachikomaia
Invitado
 
Mensajes: n/a
Puntos:
Problema con decimales.

Por ejemplo esto:
Código:
Act = 0;
do {
	Act = Act+0.1;
} while ( Act < 0.9 );
Termina con Act siendo 1, pero eso no debería ocurrir, debería terminar en 0.9.

Inicia siendo 0, luego:
0.1
¿es < 0.9?
Sí, entonces pasa a ser 0.2
así sucesivamente hasta 0.9
¿es < 0.9?
No, sin embargo debido al error que digo se aplica el proceso de nuevo y pasa a ser 1.

Es como si el programa dijera que es 0.9 por simplificar pero en realidad fuese 0.899999 cosa que ya me ha pasado.

Postearé en otros sitios y buscaré experiencias que haya tenido con esto -será más fácil hallarlas en Internet que en mi mente xD -, mientras si saben me pueden dar una solución.

Gracias.