Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/09/2011, 14:12
Avatar de rafa_yael
rafa_yael
 
Fecha de Ingreso: mayo-2010
Ubicación: Zapotlanejo, Mexico
Mensajes: 54
Antigüedad: 14 años
Puntos: 4
Duda sobre variable float

Hola que tal, soy completamente nuevo en C y estoy aprendiendo sobre las variables.

Resulta que me encontre con este dato curioso cuando declaro las variables float. Al darles el valor e imprimirlo sobre pantalla, siempre cambia por lo menos un digito o una sucecion de ellos. Uso el siquiente codigo






Código C:
Ver original
  1. #include <stdio.h>
  2. #include <windows.h>
  3.  
  4. int main() {
  5.    
  6.    
  7.     float num_dec   = 20.20;
  8.     float num_dec1 = 51.21;
  9.    
  10.     printf("\n\n El valor de num_dec es %f\n",num_dec);
  11.     printf("\n El valor de num_dec exponecial es %e\n\n",num_dec);
  12.     printf("\n\n El valor de num_dec es %f\n",num_dec1);
  13.     printf("\n El valor de num_dec exponecial es %e\n\n",num_dec1);
  14.     system("PAUSE");
  15.     return 0;
  16.  
  17. }

Esto me da como resultado:


Cita:
El valor de num_dec es 20.200001

El valor de num_dec exponecial es 2.020000e+001



El valor de num_dec es 51.209999

El valor de num_dec exponecial es 5.121000e+001

Presione una tecla para continuar . . .
Lo que se me hace raro es el cambio de valor de los valores despues del punto. ¿Esto es normal o me puede perjudicar en futuros calculos que ocupe hacer con la variable?